You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Chaque service n'est pas répliqué. Si vous le pouvez, utilisez le mode Docker Swarm ; il est plus optimisé pour une instance de production. Ce mode est faillible au Single Point of Failure (SPOF).
Pour faciliter la représentation, nous supposons que nous activons uniquement le module blog.
architecture-beta
group docker(server)[Serveur Docker]
service internet(cloud)[Internet]
service elasticsearch[Elasticsearch] in docker
service mongo[MongoDB] in docker
service neo4j[Neo4J] in docker
service postgres[PostgreSQL] in docker
service redis[Redis] in docker
service vertx-blog[Blog] in docker
service traefik(internet)[Traefik] in docker
service zookeeper[Zookeeper] in docker
internet:B --> T:traefik
traefik:B -- T:zookeeper
vertx-blog:R -- L:zookeeper
traefik:L --> T:vertx-blog
Chaque service est répliqué autant de fois qu'il y a de nodes disponibles (sauf pour certains services qui sont fixés à 3 répliques). Ce mode résiste au Single Point of Failure (SPOF) et permet véritablement de répartir les charges entre différents serveurs.
Le cluster est composé de trois nodes.
Les services nécéssitant un nombre fixe de répliques sont au nombre de 2.
Seul le module blog est activé pour l'exemple.
architecture-beta
group swarm-cluster(server)[Cluster Docker Swarm]
group server-1(server)[Serveur 1] in swarm-cluster
group server-2(server)[Serveur 2] in swarm-cluster
group server-3(server)[Serveur 3] in swarm-cluster
service internet(cloud)[Internet]
service load-balancer(cloud)[Load Balancer]
service traefik-1(internet)[Traefik] in server-1
service traefik-2(internet)[Traefik] in server-2
service traefik-3(internet)[Traefik] in server-3
internet:B --> T:load-balancer
load-balancer:B --> T:traefik-1
load-balancer:B --> T:traefik-2
load-balancer:B --> T:traefik-3