1. Why use the configuration center
1. Dynamic update of configuration: After modifying the configuration, the modified configuration can take effect without restarting the service. 2.
Centralized configuration management: If each node maintains its own configuration file, when there are hundreds or thousands of service nodes, maintenance The cost is too high
3. The security and authority of the configuration content: some passwords and keys stored in the code base will be seen by all programmers who have the code base authority, which is easy to leak. 4. Configuration management in multiple
environments
2. Comparison of common configuration centers
function points | SpringCloud Config | Apollo | Nacos |
---|---|---|---|
open source time | 2014.9 | 2016.5 | 2018.6 |
Configure real-time push | Support (Spring Cloud Bus) | Support (HTTP long rotation training within 1s) | Support (HTTP long rotation training within 1s) |
version management | Support (Git) | support | support |
configuration rollback | Support (Git) | support | support |
Gray release | support | support | to be supported |
authority management | support | support | to be supported |
multi-cluster | support | support | support |
multi-environment | support | support | support |
listen query | support | support | support |
language | java | go/c++/java/python/php/.net/openApi | python/java/node.js/openApi |
stand-alone deployment | config-server+git+springcloud bus (support configuration real-time push) | apollo-quikstart+mysql | nacos single node |
cluster deployment | config-server+git+mq (complex deployment) | config+admin+portal+mysql (complex deployment) | nacos+mysql (simple deployment) |
Configuration format check | not support | support | support |
letter of agreement | HTTP/AMQP | HTTP | HTTP |
For the current spring cloud ecology, the selection is relatively simple. Alibaba uses nacos, and netflix uses spring cloud config
Related recommendations:
1. Registration center selection comparison
2. Configuration center selection comparison
3. Gateway selection comparison
4. Remote call selection comparison
5. Distributed data consistency
6. Message queue selection comparison
7. Monitoring tool selection Contrast
8. Comparison of full link tracking model selection