我正在尋找一種方法來共享NodeJS中所有集羣實例的相同數據結構(包含函數,因此JSON不是選項)。我有一個名爲'用戶'的數據結構,用於跟蹤用戶會話幷包含他們有權訪問的功能。我需要能夠跨所有節點進程共享此數據結構,或者我需要其他設計模式。有誰知道這個問題的任何解決方案?感謝NodeJS集羣問題
回答
我意識到這是陳舊和回答,但它可能有利於其他人注意替代方案。處理這種情況的推薦方式是將此數據結構的功能放在單獨的文件中,並在需要時使用它。這將基本上拉入「代碼/函數」,並將數據本身存儲(序列化/反序列化)到任何數據存儲中。
存在用於上的NodeJS設置適當的IPC(進程間通信)的多個選項:使用文檔/鍵 - 值存儲解決方案等Redis(鍵值)或MongoDB
- (NoSQL的文檔 - 使用cluster模塊的集成IPC功能存儲)
- (見
send
method)
決定哪些這些解決方案的一個最適合取決於你的需要簡單和你的項目設置。對於我們的最後一個項目,我決定使用這兩種方法:
- IPC觸發工作調度部分任務不同情況的NodeJS
- Redis的集中會話級和API令牌管理
如果您正在使用Express,我強烈建議您使用Redis中間件connect-redis。此會話中間件自動處理基於快速應用程序的集中式會話管理(這也意味着您可以存儲複雜的JS對象並可從所有實例訪問它們)。
但我需要能夠共享包含函數的數據結構,並且不能使用JSON函數 –
您可以使用MongoDB進行嘗試,它似乎包含用於函數序列化的序列化開關:http://mongodb.github .com/node-mongodb-native/api-bson-generated/bson.html?highlight = serialize#BSON.serialize – schaermu
IPC沒有更好的方法嗎? –
- 1. 問題與節點羣集(nodejs)
- 2. nodejs中通過羣集的socket.io問題
- 3. 羣集MSMQ問題
- 4. NodeJS集羣如何
- 5. jboss集羣查詢問題
- 6. Kubernetes Redis集羣問題
- 7. Rails,羣集gmaps4rails問題
- 8. BigCouch集羣連接問題
- 9. MySQL集羣問題ndb_mgmdon Centos7
- 10. 的MySQL集羣問題
- 11. arangodb集羣認證問題
- 12. WSO2AM網關集羣問題
- 13. jboss 6集羣問題
- 14. Mule集羣配置問題
- 15. Vertx Hazelcast:集羣問題
- 16. nodejs集羣socket.io nginx配置
- 17. nodejs - 集羣斷開/關閉
- 18. 的NodeJS的EventQueue在集羣
- 19. NodeJS集羣全局變量
- 20. 集羣的NodeJS不上市
- 21. AWS上的NodeJS集羣Lambda
- 22. PM2 NodeJs集羣模式
- 23. 崇集羣的問題:無法啓動tsugn集羣
- 24. Websphere 8集羣和JSF2問題
- 25. 火花紗羣集權限問題
- 26. Hadoop單節點集羣設置問題
- 27. ASP.NET:集羣環境通信問題
- 28. MassTransit與RabbitMQ集羣連接問題
- 29. 羣集的虛擬IP問題
- 30. IBM MQ集羣連接問題
是的。這已經很長時間了,但你絕對正確!函數不是有狀態的,所以根據需要注入它們就是要走的路! –