概述Mongodb文件分配器需要更多的时间
当mongodb在数据目录下创build一个新文件时,需要更多时间来创build:
第376行:星期四15:01:49.407 [fileAllocator]分配新的数据文件> data db test.3,用零填充…行476:Thu Jan 15 18:03:55.650 [fileAllocator] done allocating datafile > data db test.3,大小:512MB,耗时126.242秒
由于该节点在该节点不能与mongodb连接之后给出以下错误。
{“error”:“{err:\’连接到[localhost:27017]超时}”,“level”:“error”,“message”:“未捕获的exception:”,“timestamp”:“2015-01- 15T20:45:03.702Z“}
System.Speech语音合成器的奇怪问题
为当前域创build一个安全标识符
peekmessage(创build窗口循环)
webkit尖锐的windows包
检索窗口中的当前驱动器号(来自python)
我的理解是,这个错误来自MongoMQ lib。 我不知道如何处理它。 任何人都可以帮助解决这个问题。
在windows中的静态HTML
在C#中复制剪切
在Julia(在windows中)更改软件包目录的path
Py2exe – 无法在windows 7计算机上运行在windows 10上创build的.exe文件
在windows主机上访问Docker容器URL
windows答案
这里可以应用的最明显的问题是如果您使用的是windows 7或windows server 2008.与这些 *** 作系统相关的问题( SERVER-8480 )可以通过应用此修补程序解决, 这意味着由MongoDB分配的数据文件必须填满零。
与常规方法相比,这是一个漫长的过程。 不幸的是,即使安装了修补程序,版本2.6和2.4,MongoDB仍然认为问题仍然存在于windows 7或server 2008上,无论如何都是零填充。 版本2.8+通过专门检测修补程序并恢复为不填零填充修复了问题。
为了给你一个差异的想法,下面是windows 7上2.8.0-rc5(它检测到修复)的示例日志行:
2015-01-22T16:56:51.749+0000 I STORAGE [fileAllocator] done allocating datafile E:datadb280test.2,size: 2047MB,took 0.016 secs
这里是一个来自同一台机器的样本日志行,与2.6.5版本进行相同的分配:
2015-01-22T16:47:33.762+0000 [fileAllocator] done allocating datafile E:datadb265test.2,took 112.071 secs
这是112.071秒对0.016秒。 windows 8/2012或2.8+(一旦发布,并且当然安装了修补程序)似乎是如果分配给您造成问题的地方。
在windows 2.6.4之前版本的MongoDB中还有几个更为常见的已知问题,最值得注意的是使用2.6.4解决的SERVER-13729和SERVER-13681 。
其余问题正在SERVER-12401中进行跟踪,并且依赖于Microsoft的此修复程序来改善 *** 作系统对内存映射文件的刷新。 不幸的是,该修补程序仅适用于windows 8和2012,但尚未在windows 7和2008中提供。
因此,确保至少使用2.6.4+,如果可能的话使用windows 8或2012.将远程存储中看到的任何性能与本地磁盘进行比较,以确定这是否是一个影响因素,这也可能会有所帮助。
linux的答案
(保存在其他人使用linux时在这里结束)
如果您正在使用受支持的文件系统,这应该只需要几毫秒。 我怀疑你正在使用别的东西( ext3也许?),或者也许使用一个非常旧的版本的linux。
支持的文件系统使用fallocate()来分配数据文件,这非常快速。 如果这不被支持,则文件必须通过填充零来分配,这将花费很长时间。
即使如此,126秒零填充一个512MB的文件是非常缓慢的,这表明磁盘是缓慢/破碎,或超额认购/饱和,努力跟上。
如果你想评估在MongoDB之外的分配,我写了一个小的bash脚本为MongoDB预先分配数据文件 (用于测试目的),它使用上面提到的fallocate()并在我的测试中以毫秒为单位完成多个千兆字节系统。
总结
以上是内存溢出为你收集整理的Mongodb文件分配器需要更多的时间全部内容,希望文章能够帮你解决Mongodb文件分配器需要更多的时间所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
请登录后查看评论内容