Aliyun recently added a new member to its family of Internet middleware products, a tool product for application Configuration Management (ACM). Based on the product, the user can be applied to the micro service architecture, service governance under the distributed architecture, application business scenarios, big data real-time calculation algorithm, dynamic push enterprise architecture of the Internet many different scenarios such as greatly lighten the load of the configuration management, enhance the capacity of configuration management service, the price is only one over ten of traditional architecture. ACM product is a tool product that has been used since 2008 and is widely used in The internal application configuration management of Ali. It is one of the middleware products that are most widely relied on by many internal applications of Ali and has been widely used in many core scenarios inside and outside Ali.

I. Configuration management in microservice application architecture

In a microservice architecture, as the number of applications and machines increases, configuration management (such as DB_URL access information, service connection pool, internal service cache size, etc.) becomes cumbersome. The configuration distribution of multiple machines in a single application and application – to – application configuration dependencies will be challenges.

In the application publishing process of traditional architecture, the configuration changes of the application require the whole application to be repackaged and distributed. The whole process is tedious and error-prone. As shown in the figure below.

In the ACM-based microservice scenario, important application configurations are published to the ACM, and new configurations are published independently of configuration packaging. All applications take effect immediately after a new version of the configuration is released. As shown in the figure below.

Using ACM as the configuration center brings the following benefits to microservices: • All configurations are centralized, making configuration management more convenient in the case of multiple applications. • All configurations are independent of release, making configuration changes more flexible. • ACM’s natural support for grayscale publishing and rollback makes configuration change publishing more secure under microservices architecture.

Service governance under distributed architecture

In various distributed architectures, how to do service governance based on a certain RPC framework (RESTful, HSF, Dubbo, etc.) is very critical. Service routing, service traffic limiting, service degradation, and service authentication of service governance can be implemented through the configuration center.

Take traffic limiting downgrade as an example. In Alibaba Double 11, every operation related to traffic limiting downgrade requires second-level response, which is actually realized through ACM. As shown in the figure below. The server of each RPC registers with ACM to monitor the flow control management information of the corresponding service. When an application needs traffic control, the administrator can perform traffic control operations on the service management console. The service management system pushes traffic control information to the corresponding application server through THE ACM, and the application server takes traffic control actions based on the corresponding configuration.

ACM provides the following benefits for service governance in a distributed architecture: • High performance. The ACM uses configuration push to monitor service governance information, which has almost no impact on performance. • Relevant service governance information can be pushed to the second level, the response time is fast. • If traffic limiting is incorrectly pushed, you can restore the status by rolling back the configuration at the second level.

Dynamic push of application business scenarios

How to make the front-end page respond to the operation activities quickly, reduce the development cost and improve the operation efficiency is also a big scene of ACM.

Take an e-commerce operation as an example: By embedding ACM configuration content (such as third-party library version number, static resource URL, etc.) into the front-end Javascript, the operator can directly make the display of front-end Javascript take effect by modifying ACM configuration rules through the operation tool when the operation activity is released.

Using the ACM to push application scenarios brings the following benefits: • The configuration can decouple service static code from service scenarios, significantly improving the application publishing process related to operations.

Iv. Adjustment of big data real-time computing algorithm

In the field of real-time computing of big data, it is usually necessary to dynamically adjust calculation parameters to obtain the most accurate real-time computing results.

Taking an internal APM monitoring system of Alibaba as an example, the monitoring system needs to dynamically adjust the business threshold to control the real-time computing system and alarm the computing business. Moreover, in the process of threshold modification, the whole process is required to be real-time, and the application can not be stopped. The computing thresholds of the monitoring system are pushed using ACM rules. The scenario is shown below.

ACM provides the following benefits for applications in real-time big data computing scenarios: • Application computing parameters are dynamically configured and take effect dynamically with a time block, resulting in low performance impact.

5. Remote live scenario under enterprise-class Internet architecture

Remote live is an advanced disaster recovery (Dr) architecture in enterprise – class Internet architecture. Compared with the traditional Dr Architecture, it has advantages such as short service recovery time, low capacity requirements, and quick and easy O&M. At present, live more architecture is widely used in alibaba, Ele. me and other companies.

In Alibaba, the core algorithm of Dr Multi-active architecture, ID sharding and corresponding routing rules are dynamically pushed by ACM. The corresponding client and server, such as RPC, MQ, and DB, are embedded with routing paths. When a disaster drill or a real disaster occurs, the administrator only needs to push rules dynamically. The rules will affect all architecture components. Where, the schematic diagram is shown below.

ACM provides the following benefits for remote active-active scenarios: • Infrastructure and Dr Logic are decoupled, and the routing logic is determined by Dr Rule switchover. • It takes effect quickly. In theory, Dr Switchover rules can be pushed to 100,000 level machines in seconds.

Ali Cloud Internet middleware products never stop pursuing innovation, and constantly adjust and upgrade products according to user needs and market development. We believe that middleware products will bring users more and better experience in the future.