【发布时间】:2018-05-31 15:35:57
【问题描述】:
我似乎无法在脑海中正确理解这个概念。如果我有一个拥有 100 万并发用户的网站,根本没有任何数据库,我是否需要扩展?我正在使用 Node.js 和 Socket.IO。还有一种方法可以在我的本地主机上模拟这样的事情吗?
【问题讨论】:
标签: node.js networking concurrency socket.io
我似乎无法在脑海中正确理解这个概念。如果我有一个拥有 100 万并发用户的网站,根本没有任何数据库,我是否需要扩展?我正在使用 Node.js 和 Socket.IO。还有一种方法可以在我的本地主机上模拟这样的事情吗?
【问题讨论】:
标签: node.js networking concurrency socket.io
在 Socke.io 上拥有 100 万用户或连接并不意味着您必须进行扩展,但取决于他们在做什么,您可能会这样做。拥有数据库会增加存储空间,但与扩展 Node.JS 服务器的需求无关。 您可以创建一个测试,尝试使用循环连接尽可能多地插入,然后尝试为每个连接发出一个事件。
【讨论】:
对于扩展节点,您可以使用集群。 Node.js 的单个实例在单个线程中运行。为了利用多核系统,用户有时会想要启动一组 Node.js 进程来处理负载。 https://nodejs.org/api/cluster.html#cluster_cluster
为了模拟高负载,有一些开源工具可以免费使用:http://www.opensourcetesting.org/category/performance/
【讨论】: