AppActive:A middleware to build an application with multiple active architectures(阿里巴巴开源的一款标准通用且功能强大的构建应用多活架构的开源中间件)
English | 中文
Introduction
AppActive,is an open source middleware that builds a cloud-native, high-availability and multi-active disaster tolerance architecture for business applications. It provides standards, implementations, and demos for applying the multi-active disaster recovery architecture, which is suitable for rich business scenarios (single AZ, single region, single cloud, multi AZ, multi region, multi-cloud, self-built IDC...).
AppActive is an internal open source project of AHAS-MSHA.It is based on Alibaba's nearly 9-year production disaster recovery practice, and combines the best practices of many external customers and communities from Alibaba Cloud's commercial services, and has the characteristics of high reliability and scalability.
Quick Start
Prerequisite
The following software are assumed installed:
- docker && docker-compose
- curl
note:this demo contains many applications,please adjust your memory settings to avoid failures。
Experience
Docker Run
appactive-gateway
:cd appactive-gateway/nginx-plugin
->docker build --build-arg UNITFLAG=center -t app-active/gateway:1.0-SNAPSHOT .
appactive
: maven build to get the all the jar packages:cd ../../
->mvn clean package -Dmaven.test.skip -U
appactive-demo
:cd appactive-demo
-> Runsh run.sh
to start all applicationsappactive-portal
:cd ../appactive-portal
-> Runsh baseline.sh
to push the baseline- Bind the local host:
127.0.0.1 demo.appactive.io
, visit the browserhttp://demo.appactive.io/listProduct?r_id=1999
to see the effect appactive-portal
: Runcut.sh
to cut the stream. This demo supports two cutting methods: ratio and range- Commands:
sh cut.sh
. - Note: the rules of the demo are hard-coded. If you want to change the cut flow range, you need to calculate the rules by yourself, and then execute the cut flow.
- Commands:
If you plan to stop the experience, you can proceed:
cd appactive-demo
->docker-compose down
More
For more information, please see demo
Architecture
The overall structure of AppActive covers the data plane and the control plane。It manages application traffic and data in the whole process. As shown in the figure above, the details can be found in the following links:
- Architecture: Introduce AppActive deployment architecture and technical architecture.
- Concept: Introduce the basic conceptual model of AppActive.
- Features: Introduce the features implemented by AppActive.
Developer Guide
- DEVELOPER Guide :Introduce how to use AppActive, including basic samples, support plug-ins, version management, use effects.
Change Log
- Change Log :Introduce the change features and content of each version of AppActive.
Contributing
We always welcome new contributions, whether for trivial cleanups, big new features or other material rewards, more details see here
Connect
- DingTalk Group:34222602
License
Apache License, Version 2.0 Copyright (C) Apache Software Foundation