我正在寻找一种方法来在NodeJS中的所有集群实例之间共享相同的数据结构(包含函数,因此JSON不是一个选项)。我有一个名为“用户”的数据结构,它跟踪用户会话并包含他们有权访问的功能。我需要能够跨所有节点进程共享这个数据结构,或者我需要一个替代的设计模式。有谁知道这个问题的任何解决方案?感谢
答案 0 :(得分:1)
在nodejs上设置适当的IPC(进程间通信)有多种选择:
send
method)决定哪种解决方案最合适取决于您的要求和项目设置。对于我们的上一个项目,我决定使用这两种方法:
如果您使用的是Express,我强烈建议您使用Redis中间件connect-redis。此会话中间件自动处理基于快速的应用程序的集中式会话管理(这也意味着您可以存储复杂的JS对象并可以从所有实例访问它们。)
答案 1 :(得分:1)
我意识到这已经过时并且已经回答了,但是注意另一种选择可能对其他人有益。处理情境的推荐方法是将此数据结构及其函数放在单独的文件中,并在需要时require
。这基本上会引入“代码/函数”,并在任何数据存储中存储(序列化/反序列化)数据本身。