我将拥有一个拥有20k +并发用户的网站.
我将使用mongodb使用一个管理节点和3个或更多节点进行数据分片.
现在我的问题是最大的连接.如果我有那么多用户访问数据库,我怎样才能确保他们没有达到最大限制?我还需要改变内核上的任何内容来增加连接吗?
基本上,数据库将用于保持连接用户对站点的控制,因此会有大量的读/写操作.
先感谢您.
每次新用户连接时,您都不希望打开新的数据库连接.我不知道你是否能够轻松扩展到20k +并发用户,因为MongoDB为每个新连接使用了一个新线程.您希望您的Web应用程序后端只打开一个到几个数据库连接,并且只使用池中的那些,特别是因为Web使用非常异步且由事件驱动.
请参阅:http://www.mongodb.org/display/DOCS/Connections
服务器将为每个TCP连接使用一个线程,因此强烈建议您的应用程序使用某种连接池.幸运的是,大多数司机在幕后为您处理此事.一个值得注意的例外是您的应用程序为每个请求生成新进程的设置,例如CGI和PHP的某些配置.
无论您使用什么驱动程序,您都必须了解它们如何处理连接以及它们是否合并.例如,Node的Mongoose是非阻塞的,因此通常每个应用程序使用一个连接.这是你可能想要的东西.