How does the microservice API gateway pattern work with auto Horizontal scaling?

If I would like to have a high available solution. So, I would have two API gateways in different data center.

Each API gateway is connected to three microservices like billing, users, and account services. Each one has three replica.

  • Use Docker with my Ubuntu 14.04 (web access)
  • Elastic Beanstalk CLI, how do I create the environment with an RDS instance?
  • Pulling of docker image from a registry fails
  • Docker Eureka UnknownHostException
  • Jenkins slave in docker is denying SSH keys
  • Passing parameter in docker build command with fish
  • So is that true to have 6 copies for one microservice, and if not. How does it work?

  • Docker container on another IP and not reachable
  • How to atomically update a counter shared between Docker instances
  • Flask web app, Node.js (queue) worker. Can't make docker work
  • how can I open a flask app on my browser that's running remotely on docker?
  • How do I create a database in the Postgres Docker container? [duplicate]
  • Do Docker support 32 bit ubuntu(12.04) or suse OS in future?
  • 2 Solutions collect form web for “How does the microservice API gateway pattern work with auto Horizontal scaling?”

    In this scenario you’d want to deploy a single Kong cluster across multiple data centers – have a look at https://getkong.org/docs/0.10.x/clustering/

    Kong supports two datastores (Postgres and Cassandra) you’d probably want to pick Cassandra, but you could make Postgres work – have a look at https://getkong.org/docs/0.10.x/configuration/#datastore-section

    The API gateway model is a scalable solution for microservice based architectures.

    You have the gateway distributed over 2 data-centres which helps provide High Availability to the gateway – you could even consider spreading it over 3 for full multi-region in the future.

    If your microservices each have a replica of 3 and they are distributed into the 2 data-centres then yes you have 6 instances of that microservice running however unless you have the two data-centres sharing resources then it is 3 of each microservice in each data-centre.

    Docker will be the best open platform for developers and sysadmins to build, ship, and run distributed applications.