2017-08-07 1 views
0

J'ai un couple de serveurs node.js à charge équilibrée qui doivent avoir un état partagé. Tous les serveurs ont une fréquence élevée dans les lectures et les écritures. Quelle serait une bonne approche pour une mémoire partagée cohérente parmi toutes les instances qui ne serait pas un goulot d'étranglement autant que possible? Je suis d'abord allé avec redis, qui est toujours une option à moins qu'il n'y ait de meilleures approches pour faire face à cela. En outre, une approche de serveur central serait-elle une bonne alternative?Node.js solution de partage de mémoire partagée

+1

Redis est aussi bon que tout, si ce n'est pas l'un des _thee_ meilleure solution. Redis est construit pour la vitesse. – James

Répondre

0

Redis est une bonne solution pour obtenir des données hautement disponibles, vous pouvez l'échelle Redis facilement en utilisant une architecture maître-esclave où toutes les écritures vont au maître dont les données sont répliquées à tous les esclaves, tout comme lu passe de l'esclave.

Mais les données sont très disponibles CAP theorem suggère que nous ne pouvons pas garantir la cohérence, Redis ne fait pas exception à ce théorème

Puisque vous avez besoin d'une banque de données commune cohérente, je suggère de lire davantage sur redis garanties de cohérence

Le magasin de données que je suggère est un dans SGBDR de mémoire, mais cela dépend principalement du type de données Entreposez-vous, quel serait-il être utilisé pour, comment allez-vous interrogez va elle, etc.