2013-05-30 3 views
3

Lors du déploiement de Node.JS/Meteor pour une application à grande échelle, un seul processeur ne sera pas suffisant. Nous aimerions également l'avoir sur plusieurs serveurs pour la redondance.Node.JS/Meteor sur plusieurs serveurs desservant la même application

Quelle est la configuration recommandée pour un tel déploiement? comment fonctionne l'équilibrage de charge? cela va-t-il supporter la technologie de données push pour les clients de serveurs croisés (un client se connecte au serveur 1, le deuxième client se connecte au serveur 2 et nous aimerions qu'une mise à jour soit visible dans le client 2 et vice versa).

Merci Roni.

+2

La prise en charge de plusieurs machines par application, l'évolutivité facile et de nombreuses fonctionnalités liées seront disponibles dans Galaxy, nouvelle plate-forme de déploiement sur laquelle travaille actuellement l'équipe de base de Meteor. – imslavko

Répondre

1

Pour l'instant, vous avez juste besoin d'utiliser un proxy entre eux. La solution payante de galaxie devrait aider mais les détails sont rares pour le moment car le produit n'est pas encore sorti. Vous ne pouvez pas simplement proxy (normalement en utilisant nginx, etc.) entre deux serveurs car chaque serveur stockera l'état de l'utilisateur (c'est-à-dire son état de connexion) pendant la session DDP (le météore du protocole brut utilise pour transmettre les données).

Il y a une façon de le faire pour le moment. Obtenez meteorite et installez un package appelé meteor-cluster.

Le package devrait vous aider à relayer les données entre les instances et relayer les données entre les instances via Redis. Une vidéo sur youtube montre aussi ceci et comment le configurer.

0

Une solution alternative consiste à utiliser Hipache pour gérer l'équilibrage de charge. Vous pouvez utiliser les travailleurs multiples (backend) pour un Frontend, comme ceci:

$ redis-cli rpush frontend:www.yourdomain.com http://address.of.server.2 
$ redis-cli rpush frontend:www.yourdomain.com http://address.of.server.2 

Il y a plus d'informations sur la façon de le faire dans la page git je lien ci-dessus, il y a un seul fichier de configuration pour modifier et le repos est fait pour toi. Vous pouvez également avoir un serveur dédié pour MongoDB.

Questions connexes