Enterprise Distributed Application Service (EDAS) is the core product of Alibaba Cloud's enterprise Internet architecture solutions. One of many products developed by Alibaba Cloud's middleware team, this product provides a multifunctional solution for the enterprise-level cloud computing market.
Delivering enhanced stability and reliability, EDAS supports more than 99 percent of Alibaba Cloud's large-scale application systems, including all vital online systems for members, transactions, products, data stores, logistics, and customer reviews. As an important part of Alibaba Cloud's distributed service architecture, EDAS provides a variety of features including full life-cycle management and application O&M.
A core product that has been used and tested within Alibaba Cloud for over ten years
Ensures stable operation of all Alibaba's key online applications
Endures high traffic scenarios such as Alibaba's Double 11 Shopping Festival
Sound authentication mechanism providing (authorization/security/reliability check) for each service call
Complete PaaS platform supports application life-cycle management
A suite of solutions to provide an efficient way to manage distributed services
Comprehensive application diagnostics system helps you quickly identify issues
Online stress test and capacity planning offer you easy access to online operation performance metrics and real-time operation monitoring
Automatic scaling helps you to easily cope with unexpected traffic peaks
- Deep Insights
In-depth and global metrics reporting
Performs comprehensive monitoring and diagnosis
Tracks all distributed calls
Conducts dependency analysis of each system to identify possible bottlenecks
Uses multiple Internet middleware components that are open-source
Can be easily substituted with open-source software
Fully Compatible with Apache Tomcat Containers
As the basic container for running applications on EDAS, EDAS Container integrates with the Aliware stack to provide significant enhancement in container use, monitoring, stability, and performance. The EDAS container is also fully compatible with Apache Tomcat.
Application-centric Middleware PaaS
Basic Management and Maintenance of Applications
Centrally manage the full lifecycle of applications from the EDAS console, such as creating, deploying, starting, stopping, scaling up, scaling down, and deleting applications. By leveraging Alibaba Cloud's rich experience in operating and maintaining large-scale clusters, you can smoothly manage and support applications deployed on thousands of instances.
EDAS supports the scaling up and scaling down of applications both manually and automatically. With real-time monitoring of CPU, memory, and workload, you can scale up and down in seconds.
Primary and Sub-account System
EDAS allows you to build primary and sub-account relationships on EDAS according to your organization, team, and project needs. Meanwhile, ECS resources are organized based on the primary and sub-account relationships so that you can quickly allocate those resources.
Role and Permission Control
The maintenance of an application typically involves developers, dev ops engineers, and machine resource managers. Since different roles need to perform various management activities on applications, EDAS provides a role and permission control mechanism that allows you to define functions and assign permissions for each account.
Distributed Service Framework
To meet the demand for massive transformations in Alibaba's e-commerce platforms to distributed architectures in 2007, Alibaba developed the distributed service frameworks – HSF (High-Speed Service Framework) and Dubbo. Built on the high-performance network communication framework, HSF is a distributed service framework for an enterprise needing Internet architecture support. By providing various proven features such as service release, registration, calling, routing, authentication, volume control, auto scaling, and link tracking is a staple of Alibaba Cloud's services.
Distributed Configuration Management
The transformation from a centralized system to a distributed network poses challenges to the management and configuration of information on every machine. EDAS provides an efficient method for distribution, reconfiguration, and management that allows you to control all settings in the EDAS console centrally. More importantly, EDAS enables you to modify configurations in the console and notify the machines of the modification in seconds.
Distributed Task Scheduling
SchedulerX, allows you to configure and schedule tasks, whether standalone or distributed. It also provides you with the ability to manage the running periods and query the operating history of each task.
Global Transaction Service
Global Transaction Service (GTS) is a distributed transaction middleware with high-performance, reliability, and accessibility for solving data consistency issues in distributed environments. By using EDAS with GTS, you can quickly implement distributed database transactions, multi-database transactions, messaging transactions, service link transactions, and any combination of these operations with a rich set of policies, which ensure both high usability, performance, and security.
O&M and Service Governance
High-speed Service Framework (HSF) is designed to ensure the reliability and security of each distributed service calling. Service authentication is applied in every single phase, from service registration to service subscription and service calls.
EDAS allows you to configure throttling rules for the services provided by each application, ensuring service stability. Throttling rules can be set based on QPS and threads to ensure the system's best operation stability during traffic peaks.
Contrary to service throttling, service degradation pinpoints and blocks poor services from external services that your application calls. This feature ensures the stable operation of your application and prevents your application from being slowed down by poor services. EDAS allows you to configure degradation practices based on response time, preventing your application from being dependant on weak areas of service during high peaks in traffic and usage.
Automated Stress Testing
The original automated stress testing tool helps you make performance stress testing a part of daily routines. All the traffic for automated stress testing is actual data in the production environment. By controlling the weights of each service, you can perform authentic online stress testing without undermining the stability.
Capacity Planning (in Beta)
When performance stress testing becomes a daily routine, you can quickly view application performance metrics and perform precise capacity planning based on those parameters and the current operating level of the system.
Comprehensive Monitoring and Digital Operations
Distributed Link Tracking
EDAS EagleEye provides analysis of every service call, message sending, and database access occurred within the distributed system to help you precisely identify the system's bottlenecks and risks.
Service Call Monitoring
EDAS can adequately monitor the service calls made by your application regarding QPS, response time, and error rate of your services.
IaaS Basic Monitoring
EDAS thoroughly monitors the status of your application in regards to primary metrics such as CPU, memory, workload, network, and disk.
How it works
- Application Release and Management
- Building a Distributed System
- Using Data to Analyze System Runtime Status
Application Release and Management
Application release and management can be complicated in cloud environments. For locally developed applications, you will need to deploy each of them to the appropriate server and log on each server to deploy. It is also required to restart and scale-up applications as traffic increases.
For this scenario, EDAS provides a visual-friendly platform to release and manage applications, which allows you to efficiently manage the full lifecycle of applications on the web console regardless of the scale of the cluster.
Building a Distributed System
Ensuring the reliable calling between systems under a distributed architecture is always a headache when you switch from a centralized system to a distributed system. This includes researching technical details such as network communication and serialization protocol design.
EDAS provides a high-performance RPC framework, which allows you to build distributed systems and systematically consider the technical details such as service discovery, service routing, service calls, and service security.
Using Data to Analyze System Runtime Status
After you have developed an application and have deployed it, you often need to monitor the status of the application, such as CPU usage, machine workload, memory usage, and network traffic. However, this type of essential monitoring cannot meet all business needs. For example, you can neither identify the bottleneck when the system runs slow nor troubleshoot an error.
To address these challenges, EDAS provides a series of digital operation components, which allows you to precisely monitor and track every single element or service in the distributed system and pinpoint bottlenecks with the help of digital analysis.