Distributed Handling with Alibaba Cloud ACM for DevOps and Microservices
By Shantanu Kaushik
Cloud computing has brought along a massive shift in how technologies are implemented and utilized. Management, configuration, and delivery models can be implemented to gain productivity in any scenario. Middleware systems were introduced to achieve better collaboration and seamless talk between two counterparts of the same solution.
Loosely coupled solutions, such as microservices, typically prove to be a better-managed solution, as an effect on one counterpart will not affect the others. Alibaba Cloud Application Configuration Management (ACM) has a well-defined architecture to support large amounts of concurrent connections, and just like a well-built enterprise solution, ACM supports almost all of the required features to configure and manage applications in a better way. This includes disaster recovery solutions based on redundancies.
In the previous article, “Better Managed Applications with ACM”, we’ve briefly introduced and discussed about Alibaba Cloud ACM, its benefits, functionality, and usage. This post will focus on its use cases and its benefits in development to deployment scenarios.
Use-Case Scenarios | ACM | Alibaba Cloud
Alibaba Cloud ACM has been adopted at a massive scale with other Alibaba Cloud products, as it supports multiple use-case scenarios:
Traditionally, the development to deployment architecture was cumbersome. Most will agree that the traditional architecture was error-prone. When an application got any updates, the developers had to repackage the whole application for delivery.
With microservices architecture, every module can be updated without having to update and repackage the whole application, but even with microservices, configuration management can be a tedious task. There are multiple modules to configure and manage. Here, the primary challenge would be to manage the configuration distribution across machines for a single application. Application to application configuration management also has multiple dependencies that need to be addressed.
With Alibaba Cloud ACM, the microservices scenario gets re-defined. Let’s take a look at the architecture that ACM provides with microservices:
With Alibaba Cloud ACM, microservices can be configured and managed without any issues. All of the critical application configurations are served to ACM. Whenever new configurations are ready to be published, it goes through a direct implementation process and does not require repackaging. The whole process supports real-time execution.
Some of the benefits of ACM with microservices are listed below:
- The support of gray release improves security and authorization like never before.
- You can easily rollback configuration using ACM if the version has some deployment issues.
- Configuration management is completely centralized and makes it extremely easy to manage multiple applications at the same time.
- Configurations are version-independent and can be modified easily.
Distributed Architecture | ACM | Alibaba Cloud
Alibaba Cloud ACM supports administration functions, such as service routing, downgrading, authentication, and rate limiting. With multiple services in a distributed architecture, it is an essential part of management to optimize the whole scenario using an RPC framework, such as REST APIs or HSF.
Any application scenario requires throttling based on traffic requirements. Service degradation and throttling have to be governed based on traffic load requirements. Here, the prime mover is the time taken for these scenarios to execute. ACM makes sure you can achieve this within seconds.
Let’s take a look at the architecture for this scenario:
With the distributed architecture, the RPC server utilizes ACM to listen for any information about service rate limiting. The ACM utilizes the governance console and listeners to achieve this and performs the throttling functionality depending on the information provided by the listeners. ACM kicks in to provide configuration for the corresponding server and executes the throttling action.
Some of the benefits associated with ACM within a distributed system are listed below:
- Error correction is the biggest benefit of this scenario. In a scenario where an issue occurs with the provided configuration, ACM is extremely quick with error correction and rollback.
- Alibaba Cloud ACM provides extremely quick action for any configuration management push scenario.
High-Availability Architecture | Internet Enterprise | Multi-Site
Let’s take a look at the architecture for that ACM follows this use-case scenario:
Some of the main benefits offered by the Alibaba Cloud ACM in this scenario are listed below:
- Both the infrastructure and the disaster recovery service are independent of each other. The disaster recovery scenario is responsible for selecting the delivery route to maintain continuous service availability.
- The disaster recovery scenario can be pushed to thousands of machines at once. The whole operation can be performed within seconds.
How Does It Work?
The multi-site disaster recovery architecture with Alibaba Cloud ACM offers quick business recovery and lower requirements. It is highly effective and very simple to maintain.
Alibaba Cloud ACM enables the push of core algorithms and other relevant routing rules for a multi-site scenario. High Availability is maintained as ACM dynamically pushes the information based on requirements. During a disaster recovery scenario, the administrator dynamically pushes the rules to gain control of the situation. ACM automatically handles all of the tasks after that.
Dynamic Configuration Push | ACM | Alibaba Cloud
The Alibaba Cloud ACM configuration management presents itself as a one-stop solution for e-commerce website configuration management or any website that requires the deployment of web pages based on a continuous pattern. ACM helps by managing application scenarios independently. The architecture focuses on independent static business code with configurations to meet resources.
Let’s take a look at the architecture for this scenario:
Real-Time Big Data | ACM | Alibaba Cloud
Let’s take a look at the architecture of this scenario:
Alibaba Cloud and big data analysis have come a long way. Big-data analysis requires a lot of calculative measures. ACM enables the calculation of these parameters and provides the configuration data based on real-time values. The whole system is dynamically adjusted to suit the business scenario that requires big-data analysis in the first place.
Big-data analysis requires a monitoring system. The monitoring system dynamically adjusts the threshold values to control the real-time computing system. ACM provides the configuration details to adjust the threshold value modification in real-time, so there is no downtime for the application.
Alibaba Cloud ACM is a middleware that provides seamless integration and performance with a wide variety of scenarios. These scenarios cover most of the development to deployment scenarios. Many organizations opt for a hybrid SDLC setup that incorporates a mix of deployment scenarios. We can call this a hybrid mix. Alibaba Cloud ACM outperforms most of the open-source middleware products that help with configuration and application management. ACM provides a suitable, seamless, and highly reliable solution.
- Enterprise Distributed Application Service — Overview
- Why Are Microservices Loosely Coupled?