如何在nodejs中的集群之间共享变量?

时间:2015-10-27 08:03:53

标签: javascript node.js express

我正在使用集群运行我的快速应用程序。 我的主人有一些缓存,需要在我的工作人员之间共享一个变量。 我可以通过以下方式执行此操作,因为使用物理数据存储对我来说不可行吗?

db.PageLayouts.Where(x => x.ZoneName == zone.Name)
              .Join(db.PageLayouts,
                    l => l.PageId,
                    p => p.PageId,
                    (l,p) => new { l,p })
              .Where(z => x.p.ZoneName == PageName)
              .OrderBy(x => x.l.AppearanceOrder)
              .Select(x => x.l)
              .ToList();

1 个答案:

答案 0 :(得分:2)

虽然您可以进行进程间通信,但这并不容易,可能不是您想要的(跨进程共享变量)。
您最好的选择可能是将您的缓存商店外部化,例如:所有群集都可以访问的Redis存储。它可以在同一台机器上,也可以在另一台机器上。如果您需要水平缩放,它也会有所帮助,因为它将被多台机器共享。