调整节点 – mongodb – 本地连接池的大小

我有一个快速的应用程序通过节点mongodb本机驱动程序与mongodb交谈。 在我的应用程序中的一些请求是间歇性缓慢。 任何确定或排除驱动程序连接池大小的好工具或策略都是一个瓶颈?

下面是关于调整池大小的一些讨论 ,但这是非常不确定的。 aheckmann指出,5的默认值通常是很多,而tinana看到了许多并发请求,从而激起了巨大的收益。

更新:这个问题是为了帮助我理解调整和工具驱动程序池大小,而不是解决即时性能问题。 我描述我的问题只是为了提出这个问题。

在这样的情况下,第一步是始终与数据库开始。

如果您的查询响应较慢,则这些查询应该显示在慢日志中。 看看官方文档进行分析 。 “慢”查询的默认值大约是100毫秒,所以如果你的查询速度慢是因为数据库,你会看到证据。

另外,请查看DB的图表。 “图表”是指服务器正在执行的Nagios / Cacti / Zabbix / ServerDensity / MMS图表。 如果你没有这些,从那里开始。 调整连接池的大小是没用的,如果你不知道你有多less连接或你的CPU是什么样的。

任何确定或排除驱动程序连接池大小的好工具或策略都是一个瓶颈?

一旦你排除了数据库, 并且你已经configuration了监视,那么你可以打开连接池大小。 一旦你完成了所有这一切。 你将能够调整池的大小,并确保你有(一)解决了问题,(二)没有造成更多的问题。

整个周期很重要。

如果你使用连接池,但是你没有看慢速的日志和总连接,那么你只会导致更多的问题。