【发布时间】:2012-09-05 06:35:52
【问题描述】:
我刚刚运行了一个测试,通过 nginx/php fastcgi 创建了 1000 个到 mongodb 的非持久连接,这在我的开发机器上花费了大约 2.1 秒。然后我尝试使用持久连接进行相同的测试,结果相同。我想我在某处读到过,现在始终启用 php 驱动程序中的持久性。接下来,我尝试将连接存储到 APC,这导致第一次请求后的响应时间为 7-9 毫秒。现在我想知道一些事情:
我几乎从来没有想过要在我的应用程序中一次创建多个连接,并且根据我的理解,使用持久连接,mongo 会根据需要创建新连接司机。
创建单个连接似乎与从 APC 拉取存储的连接对象所用的时间大致相同。缓存连接对象真的会带来好处吗?
缓存我当然知道的连接仍然需要某种检查以查看它是否仍然是有效连接。每次执行此检查时,我想知道它是否会否定性能增益(如果有的话) 从缓存中提取它。
我似乎无法真正找到任何材料真正涵盖其中的任何内容,所以我假设这是因为我对自己的理解感到困惑。你们中有人尝试过吗?
谢谢!
【问题讨论】: