Pusat Konfigurasi Sumber Terbuka - Apollo
Apollo adalah platform manajemen konfigurasi yang dikembangkan oleh departemen kerangka kerja CTRIP. Ini dapat secara terpusat mengelola konfigurasi lingkungan dan kelompok aplikasi yang berbeda. Setelah modifikasi konfigurasi, dapat didorong ke sisi aplikasi secara real time, dan memiliki izin standar, tata kelola proses dan karakteristik lainnya. Server dikembangkan berdasarkan boot Spring dan Spring Cloud. Ini dapat dijalankan langsung setelah pengemasan, dan tidak perlu menginstal wadah aplikasi tambahan seperti Tomcat.
Periksa kode
Apollo GitHub
Anda dapat menggunakan ide untuk membukanya secara lokal
Skrip database
Jalankan skrip berikut untuk membuat apolloconifgdb, apolloportaldb
Mulai ConfigService Adminservice
Konfigurasi kelas utama
com.ctrip.framework.apollo.assembly.apolloApplication
Opini VM
-Dapollo_profile = github -dspring.datasource.url = jdbc: mysql: // localhost: 3306/apolloconfigdb? Karakterencoding = utf8 -dspring.dataSource.username = root -dspring.dataSource.password = dataSource.username = root -dspring.dataSource.password = conficer = conficer = conficsword = conficsword = conficsword = confice = confice = compring = datacring = compring = datacring = compring = datacring = compring = datacring = compring = datacring = compring = datacring.pringcring = compringer
Setelah memulai, buka http: // localhost: 8080 dan Anda dapat melihat bahwa baik Apollo-ConfigService dan Apollo-Adminservice telah dimulai dan terdaftar dengan Eureka.
Mulai Apollo-Portal
Konfigurasi kelas utama
com.ctrip.framework.apollo.portal.portalApplication-dapollo_profile = github, auth -ddev_meta = http: // localhost: 8080/-derver.port = 8070 -Dspring.datasource.url = jdbc: mysql: // localhost: 3306/apolloportaldb? Karakterencoding = utf8 -dspring.datasource.username = root -dspring.dataSource.password =
Jika profil auth diaktifkan, nama pengguna default adalah Apollo dan kata sandi adalah admin
Diterapkan pada sit, uat, mesin lingkungan produksi
1. Tambahkan direktori/opt/data/direktori, dan telah membaca dan menulis izin;
2. Menambahkan file baru: /opt/settings/server.properties dan menambahkan konfigurasi:
env = devsit: env = fatuat: env = uat produksi: env = pro
Contoh Klien
@Component Set component name @RefreshScope Specifies that configuration changes can be refreshed @ConfigurationProperties(prefix = "redis.cache")@Component("sampleRedisConfig")@RefreshScopepublic class SampleRedisConfig { private static final Logger logger = LoggerFactory.getLogger(SampleRedisConfig.class); int pribadi kedaluwarsa; Private String Clusternodes; private int commandtimeout; peta pribadi <string, string> somemap = maps.newlinkedHashMap (); Daftar Pribadi <String> Somelist = lists.newlinkedlist (); @PostConstruct private void initialize() { logger.info( "SampleRedisConfig initialized - expireSeconds: {}, clusterNodes: {}, commandTimeout: {}, someMap: {}, someList: {}", expireSeconds, clusterNodes, commandTimeout, someMap, someList); } public void setExpireseconds (int kedaluwarsa) {this.expireseconds = Expireseconds; } public void setClusternodes (string clusternoDes) {this.clusternodes = clusternodes; } public void setCommandTimeout (int commandTimeout) {this.CommandTimeout = commandTimeout; } peta publik <string, string> getSomeMap () {return somemap; } Daftar Publik <String> getSomeList () {return somelist; } @Override Public String ToString () {return string.format ("[sampleredisconfig] kedaluwarsa: %d, clusternodes: %s, commandtimeout: %d, somemap: %s, somelist: %s", berakhir) }}Siapkan pemantauan
@ComponentPublic kelas springboTapollorefreshConfig {private static final logger = loggerFactory.getLogger (springbooTapollorefreshConfig.class); @Autowired Private APOLLOREFRESHCONFIG APOLLOREFRESHCONFIG; @Autowired pribadi sampleredisconfig sampleredisconfig; @Autowired Private Refreshscope Refreshscope; @ApolloconfigChangeListener public void onchange (configChangeEvent changeevent) {logger.info ("Sebelum menyegarkan {}", sampleredisconfig.toString ()); refreshscope.refresh ("sampleredisconfig"); Logger.info ("After Refresh {}", sampleredisconfig.tostring ()); }}Meringkaskan
Di atas adalah Proses Konstruksi Lingkungan Pengembangan Lokal Spring Cloud Apollo yang diperkenalkan kepada Anda. Saya harap ini akan membantu Anda. Jika Anda memiliki pertanyaan, silakan tinggalkan saya pesan dan editor akan membalas Anda tepat waktu. Terima kasih banyak atas dukungan Anda ke situs web Wulin.com!