J'ai posté ceci à ServerFault, mais l'Node.js la communauté semble minuscule, donc je suis en espérant que cela apporte plus de visibilité.
J'ai un Node.js (0.4.9) application et fais des recherches sur la meilleure façon de déployer et à maintenir. Je veux l'exécuter dans le cloud (EC2 ou RackSpace) et à haute disponibilité. L'application devrait fonctionner sur HTTPS. Je vais vous soucier de l'Est/Ouest/UE plein de basculement plus tard.
J'ai fait beaucoup de lecture sur keep-alive (Upstart, pour Toujours), multi-core services publics (Fugue, multi-nœud de Cluster), et proxy/équilibreurs de charge (nœud de-http-proxy nginx, Varnish, et de la Livre). Cependant, je ne suis pas sûr de savoir comment combiner les différents services disponibles pour moi.
J'ai cette configuration à l'esprit et à la nécessité d'aplanir certaines des questions et obtenir des commentaires.
- Cluster est la plus activement développé et apparemment populaires multi-core utilitaire pour Node.js donc de l'utiliser que pour courir 1 nœud "cluster" par application serveur sur le non-port privilégié (disons 3000). Q1: Doit Jamais être utilisé pour garder le cluster en vie ou bien est-ce un pléonasme?
- Utilisation 1 nginx par application serveur qui tourne sur le port 80, il suffit de proxy inverse de nœud sur le port 3000. Q2: Serait - nœud-http-proxy - être plus adapté pour cette tâche, même si elle n'a pas gzip ou serveur de fichiers statiques rapidement?
- Avoir minimum 2x serveurs comme décrit ci-dessus, avec un serveur indépendant agissant comme un équilibreur de charge à travers ces boîtes. L'utilisation de la Livre à l'écoute 443 pour mettre fin à HTTPS et passer de HTTP à Vernis qui serait round robin équilibrer la charge entre les IPs des serveurs ci-dessus. Q3: Doit nginx être utilisé pour faire les deux à la place? Q4: Doit AWS ou RackSpace équilibrage de la charge de la place, de considérer (ce dernier n'est pas arrêter HTTPS)
Questions Générales:
- Voyez-vous un besoin de (2) ci-dessus?
- Où est le meilleur endroit pour mettre fin à HTTPS?
- Si les WebSockets sont nécessaires à l'avenir, ce qui nginx substitutions feriez-vous?
J'aimerais vraiment entendre la façon dont les gens sont à la configuration actuelle des environnements de production et de la combinaison des outils qu'ils préfèrent. Très apprécié.