我有兴趣计算我在查询生命期间从我的网络应用程序到数据库的往返次数。不计算连接,因为它们被合并和重用,但实际查询(查找,插入,更新,......)
在我开始在我的代码中添加性能分析探针之前,有什么东西,驱动程序端或服务器端可以提供这种信息吗?
答案 0 :(得分:1)
是的,您应该查看MongoDB中的系统配置文件。您可以将其设置为使用MongoDB将所有数据库操作记录到特殊集合:
http://docs.mongodb.org/manual/tutorial/manage-the-database-profiler/
分析数据库操作的性能
数据库探查器收集有关MongoDB写入的细粒度数据 正在运行的mongod实例上的操作,游标,数据库命令。 您可以基于每个数据库或每个实例启用分析。该 启用性能分析时,配置级别也是可配置的。
数据库分析器将收集的所有数据写入 system.profile集合,这是一个上限集合。见数据库 Profiler输出,用于概述system.profile中的数据 由探查者创建的文件。
它确实会对性能产生一些影响,所以当你打开它时我会小心,但是当你试图准确确定应用程序底层的内容时,它会非常有用。在使用可能需要简单函数调用并生成大量单个查询/更新/删除的框架或ORM时特别有用。