Architecture micro-service

a marqué ce sujet comme résolu.

Salut à tous,

Initialement je viens du monde Java où il y a pas mal d’outils pour mettre en place une architecture micro-service. Notamment Netflix OSS ou carrément JHipster.

Je vais travailler pour un projet "perso" avec des personnes sachant utiliser PHP et NodeJS. Du coup je me demandais s’il existait un eco-système plus ou moins identique pour PHP et/ou NodeJS ?

Suite à mes différentes recherche. Pour Laravel j’ai l’impression que Laravel Forge est un équivalent à Eureka de Netflix. Mais j’en suis pas sûr.

J’arrive pas à trouver d’article expliquant et présentant les différents outils, framework et exemple d’architecture.

Ou existe-t-il un équivalent à JHipster pour les autres langages ?

Merci d’avance :D

Bonjour Spriritwhite,

Pour gérer mes micro-services, j’utilise Git + Docker tout simplement. :) Après tu peux utiliser Jenkins qui fournit des outils de déploiements. Puis tu peux te renseigner sur quelques technos : Circle CI, Kubernetes, Portainer. Je vais laisser des membres plus compétents que moi sur les CI à grande échelle, n’étant pas du tout à même de pouvoir répondre.

Edit : sur un même PC tu peux utiliser PM2 ou npm-run-all pour lancer plusieurs scripts Node.js en même temps.

+1 -0

Merci pour ta réponse.

En termes d’outils je pensais plus à des LoadBalancer, services registry, voir carrément une gateway de service.

J’ai effectivement déjà un Jenkins de monter sur un serveur :)

En regardant rapidement j’ai vu que kubernetes pouvait faire du LoadBalancing et ne nécessite pas de service registry. C’est vraiment simple d’utilisation ?

J’avoue qu’avec Spring Cloud il me suffisait d’une annotation. Je m’attend pas à ce que ça soit aussi facile mais on perd pas trop de temps à faire de la configuration ?

+0 -0

En regardant rapidement j’ai vu que kubernetes pouvait faire du LoadBalancing et ne nécessite pas de service registry. C’est vraiment simple d’utilisation ?

J’avoue qu’avec Spring Cloud il me suffisait d’une annotation. Je m’attend pas à ce que ça soit aussi facile mais on perd pas trop de temps à faire de la configuration ?

spiritwhite

Simple et kubernetes dans la même phrase ne font généralement pas bon ménage. On peut pas décemment dire que Kubernetes est "simple" a prendre en main. Si tu veut monter un cluster de tests et faire communiquer 2 ou 3 services ensembles tu part sur minimum une bonne journée de config au minimum du minimum. Tout dépend de ton niveau de connaissance et de ce que tu attend de ton architecture. Kubernetes est puissant mais tu devra maintenir un repo de configuration si tu veux faire les choses bien, créer un ou des namespaces, écrire les dockerfiles de tes services, créer les services kubernetes, gérer le loadbalancing, etc. Si tu ne cherches pas a perdre du temps, ce n’est pas la bonne option pour toi, je pense ;)

Désolé de ne pas pouvoir t’aider d’avantage :)

Finalement j’ai vu que pour Eureka y a des clients PHP et NodeJS. Du coup je vais partir sur un Service Registry Eureka. Et pour la loadBalancing, je vais faire ma gateway avec Zuul. Certes c’est du java, mais j’ai l’impression qu’il n’y a pas encore d’équivalent dans les autres langages.

Connectez-vous pour pouvoir poster un message.
Connexion

Pas encore membre ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte