GithubHelp home page GithubHelp logo

alibaba / appactive Goto Github PK

View Code? Open in Web Editor NEW
456.0 20.0 89.0 808 KB

AppActive: A middleware dedicate to building multi-site active/active application architectures(阿里巴巴开源的一款标准、通用且功能强大的,致力于构建应用多活架构的开源中间件)

License: Apache License 2.0

Java 85.99% Shell 2.72% Dockerfile 0.28% HTML 6.53% Lua 4.48%
disaster-recovery high-availability multisite bcm failover sos application traffic-control aliyun

appactive's Introduction

A middleware dedicate to building multi-site active/active application architectures

A middleware designed by alibaba: standard, universal and powerful

License

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.

Architecture

appactive_landscape

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.

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

appactive_landscape

Docker Run

  1. Run sh run.sh in the appactive-demo module to start all applications
  2. Bind hosts: 127.0.0.1 demo.appactive.io, and then visit http://demo.appactive.io/buyProduct?r_id=2000 to see how it works
  3. Run sh cut.sh in the appactive-portal module to switch flow. It should be noted that the writing-forbidden rules of this demo are hard-coded. If you want to change the range, you need to calculate the writing-forbidden rules and the next-routing rules, and then execute the flow switch.

If you plan to stop the experience, you can proceed: cd appactive-demo -> docker-compose down

More

For more, please visit demo

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

User registration

If you have used or intend to use AppActive in your business system, please let us know, your support is very important to us: #10

appactive's People

Contributors

alibaba-oss avatar kengotoda avatar mageekchiu avatar xcaspar avatar zhengkai6 avatar zhongxig avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

appactive's Issues

支持spring-cloud-gateway

看appacitve0.2.1版本支持nginx网关,但是实际应用中我们一般还有个JAVA网关,如spring-cloud-gateway,希望也能支持一下!

Failed to start demo applications

Describe the bug
Unable to access the demo system page, the error is as follows.

image

The inspection reveals the following error, and the service port(frontend, product, storage) is not listening.

image

The nacos server address of the application discovered should be modified.

image

To Reproduce
Steps to reproduce the behavior:
According to the official guidance steps.

Host not found in upstream "frontend:8885" about demo

Describe the bug
A clear and concise description of what the bug is.

nginx: [emerg] host not found in upstream "frontend:8885" in /etc/nginx/conf/apps/example.conf:32

To Reproduce
Follow the steps in the readme.

Expected behavior
A clear and concise description of what you expected to happen.
Accessing the page succeeded, not 502.

Screenshots
If applicable, add screenshots to help explain your problem.
image

Desktop (please complete the following information):

  • OS: [e.g. iOS]
  • Browser [e.g. chrome, safari]
  • Version [e.g. 22]

Smartphone (please complete the following information):

  • Device: [e.g. iPhone6]
  • OS: [e.g. iOS8.1]
  • Browser [e.g. stock browser, safari]
  • Version [e.g. 22]

Additional context
Add any other context about the problem here.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.