Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/36.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Performance NodeJS对象列表还是保存在Redis中的列表?_Performance_Node.js_Redis - Fatal编程技术网

Performance NodeJS对象列表还是保存在Redis中的列表?

Performance NodeJS对象列表还是保存在Redis中的列表?,performance,node.js,redis,Performance,Node.js,Redis,我正在开发一个具有在线用户列表的应用程序。现在我在nodejs中定义了全局变量 var onlineUsers = {} 其中包含用户对象 var userObj = { username: 'johndoe', fullname: 'John Doe', user_id: 234242 } 这些都是在线的 我的问题是,将在线用户对象放在Redis中会更好,还是可以保持原状,考虑到可能会有数百万在线用户?当您的潜在场景是数百万并发在线用户时,您需要运行多个Web服务器来服务该负载。每个Web

我正在开发一个具有在线用户列表的应用程序。现在我在nodejs中定义了全局变量

var onlineUsers = {}
其中包含用户对象

var userObj = {
username: 'johndoe',
fullname: 'John Doe',
user_id: 234242
}
这些都是在线的


我的问题是,将在线用户对象放在Redis中会更好,还是可以保持原状,考虑到可能会有数百万在线用户?

当您的潜在场景是数百万并发在线用户时,您需要运行多个Web服务器来服务该负载。每个Web服务器都需要记录在共享数据存储中登录和注销的用户,以您的Redis为例

就性能而言,将其存储在本地内存中将是最快的,但根本无法扩展


如果您刚开始开发此站点,那么内存中的解决方案可能是可以接受的,这样您就可以专注于实现产品功能,并在以后执行可伸缩的Redis解决方案。特别是如果您只需要Redis来实现这一单一功能。

当您的潜在场景是数百万并发在线用户时,您需要运行多个Web服务器来满足该负载。每个Web服务器都需要记录在共享数据存储中登录和注销的用户,以您的Redis为例

就性能而言,将其存储在本地内存中将是最快的,但根本无法扩展

如果您刚开始开发此站点,那么内存中的解决方案可能是可以接受的,这样您就可以专注于实现产品功能,并在以后执行可伸缩的Redis解决方案。特别是如果你只需要Redis来实现这个单一的功能