/ / configure les microservices de matrices de services sur le nœud à exécuter - azure, azure-service-fabric

configurer les microservices de la structure de service sur le nœud à exécuter - azure, azure-service-fabric

Nous avons une application de microservices avec 5 services sans état

  1. eShopWeb
  2. eShopAPI
  3. eShopOrder
  4. eShopBasket et eShopPayments

Nous avons créé un cluster de structures de service en azur avec 3 nœuds. Maintenant, nous voulons configurer comme suit

  1. eShopWeb et eShopOrder doivent fonctionner sur le nœud 1
  2. eShopAPI et eShopPayments doivent s'exécuter sur le nœud 2
  3. eShopOrder doit être exécuté sur le noeud 3.

Comment réaliser la configuration ci-dessus pour gérer plusieurs micro-services sur le même noeud

Réponses:

1 pour la réponse № 1

Ne vous préoccupez pas du nœud qui exécute le service. En liant les services aux nœuds, vous affaiblissez la auto-guérison capacités de SF (que se passe-t-il si le noeud 2 tombe en panne?). En outre, vous ne pouvez pas effectuer de mises à niveau glissantes de cette manière (sauf pour eShopOrder).

Je vous recommande d'éviter les contraintes de placement si vous le pouvez. Sauf si vous avez plusieurs types de nœuds ou un grand cluster.

L’affinité de service s’applique aux services existants qui sont si bavards qu’ils ne fonctionnent pas bien sur des nœuds distincts, en raison du temps de latence de la communication.

(Et pour la production, vous devriez utiliser 5 nœuds.)


0 pour la réponse № 2

Vous avez deux options ici.

  1. Contraintes de placement. Vous pouvez obtenir des détails dans ce question. Mais je ne recommanderais pas cela car une capacité d'équilibrage naturelle sera inutile ici.
  2. Affinité de service. Vous pouvez trouver plus d'infos ici. C’est lorsque certains services se trouvent sur le même nœud qu’un autre. Attention, cette règle peut être enfreinte; lisez attentivement la documentation.

Je voudrais aller avec la deuxième approche et voir comment cela fonctionne au moins dans un environnement de transfert.