我有一个 64G RAM 的服务器,我正在运行一个脚本,它将 csv 文件中的一百万个数据与数据库进行比较。如果找到匹配项,则脚本仅在执行结束时打印匹配项数。
脚本在运行时需要 3 分钟才能完成。还使用 50,000、10 万、30 万、50 万个数据文件进行了测试,性能率或脚本执行率成正比。服务器中有足够的可用内存。脚本运行时的 mongostat 输出粘贴在下面。我的问题是,我相信脚本每秒执行近 5000 个查询。我读过很多帖子,他们平均每秒收到 5 万次查询。如何做到这一点?我的服务器运行 Ubuntu、64 位和 24 核。
insert query update delete getmore command flushes mapped vsize res faults locked db idx miss % qr|qw ar|aw netIn netOut conn time
*0 3885 *0 *0 0 1|0 0 12g 24.2g 64m 0 db_list_restore:0.0% 0 0|0 1|0 380k 142k 2 03:09:26
*0 4188 *0 *0 0 1|0 0 12g 24.2g 68m 0 db_list_restore:0.0% 0 0|0 0|0 410k 153k 2 03:09:27
*0 4462 *0 *0 0 1|0 0 12g 24.2g 72m 0 db_list_restore:0.0% 0 0|0 0|0 440k 163k 2 03:09:28
*0 4401 *0 *0 0 1|0 0 12g 24.2g 76m 0 db_list_restore:0.0% 0 0|0 0|0 435k 161k 2 03:09:29
*0 4368 *0 *0 0 2|0 0 12g 24.2g 81m 0 db_list_restore:0.0% 0 0|0 1|0 432k 160k 2 03:09:30
*0 4416 *0 *0 0 1|0 0 12g 24.2g 84m 0 db_list_restore:0.0% 0 0|0 1|0 437k 161k 2 03:09:31
*0 4245 *0 *0 0 1|0 0 12g 24.2g 89m 0 db_list_restore:0.0% 0 0|0 0|0 420k 155k 2 03:09:32
*0 4561 *0 *0 0 1|0 0 12g 24.2g 93m 0 db_list_restore:0.0% 0 0|0 1|0 451k 167k 2 03:09:33
*0 3920 *0 *0 0 1|0 0 12g 24.2g 97m 0 db_list_restore:0.0% 0 0|0 0|0 388k 144k 2 03:09:34
*0 4307 *0 *0 0 2|0 0 12g 24.2g 105m 0 db_list_restore:0.0% 0 0|0 0|0 426k 157k 2 03:09:35