Spring Cloud Config Server is a REST API.
Config is deployment time (push/pull) dependency. No new service to setup, maintain and monitor. No server can go down so you cannot be stuck with old configuration. Works on any application with configuration files, not just on applications you develop. No coding or scripting required.
Spring Cloud Config is open source.
Config is SaaS. Signup, setup and use in minutes. No infrastructure required. Free, paid and on-premises plan available. Works on iPad Safari.
Spring Cloud Config is advanced. Supports complex requirements like shared sections, pattern matching, custom precedence and custom back-ends.
Config is simple. It has web-based interface with type support. Precedence is based on the configuration hierarchy. Easy enough to be used by all technical levels. IT managers can review configurations without asking for sysadmin help.
Spring Cloud Config can use the full power of Git, and so you have the option of using hosting services like GitHub and Bitbucket.
Config has version control features like semantic versioning, history, diff, tagging, notifications, etc. It also has an approval workflow. We have the concept of configuration states, so you can get the latest version, a specific version, or the approved version. Config can also act as a configuration inventory for all your systems and applications, with search and documentation.
Spring Cloud Config works really well with Spring Boot microservices. Can be used by non-Spring based clients as well.
Config currently does not have a runtime component. Clients can pull the configuration at startup using our API or SDK. Integration with configuration servers like Spring Cloud Config, ZooKeeper, Consul, etc. is in the roadmap.
Spring Cloud Config handles environments using profiles and property file overrides.
Config is built with environments at the core. It uses environment variables and doesn’t use property overrides. Config only stores one configuration file per version with all the settings for all environments and instances, and generates the correct version for the environment requested. When you work with Config, you only see one configuration file per environment, and not one master configuration file with multiple override files. We also have UI that shows differences between environments.
Spring Cloud Config supports symmetric or asymmetric encryption, both client and server-side.
Config supports symmetric encryption with client side decryption. Asymmetric encryption is in the roadmap.