我已经阅读了MongoDB文档,它附带了一个关于32位系统的警告; 特别是它们的上限为Mongo的2 GB可用内存.
所以我想知道该语句是否意味着在Linode基于RAM的512MB基于VPS的低内存设置中运行MongoDB.我怀疑它是否重要,但是后来的资源添加使用64位发行版.
任何警告或者有人建议在MongoDB的VPS中选择最少的RAM吗?我知道项目要求就是这个问题,但我的意思是说,即使是将MongoDB旋转起来也是可笑的.
我在一些在我的Linode 512内运行的小型生产站点上使用它,它几乎没有使用任何内存,只有大约5-6MB.我的数据集现在非常小.
MongoDB使用映射内存存储引擎,这意味着它依赖于OS系统缓存来将常用数据保存在内存中.
http://www.mongodb.org/display/DOCS/Caching
因此,除非您有一个庞大的数据集,否则Linode 512应该没问题.
在研究这个时,我有点担心的一点是MongoDB在内存耗尽时似乎崩溃,没有太多警告.也很难准确确定它将使用多少内存或磁盘空间与您拥有的数据量成正比.也没有办法以降低性能为代价来指定硬限制.这是你可能想要监控的东西.
您可以尝试使用--smallfiles --noprealloc选项运行MongoDB,因为这允许较小的数据库文件以及不预先分配它们,如果您有一个小数据集,则可以节省磁盘空间.
这是一个用户的体验:
http://groups.google.com/group/mongodb-user/browse_thread/thread/223810a749f0e1eb
不幸的是,这个线程没有解决,如果他们有崩溃的原因会很好.
这也很好看:
http://groups.google.com/group/mongodb-user/browse_thread/thread/2646a52c4f41d832/d43f3ba7bbbbd63d