cgroup限制mongodb进程内存大小

 更新时间:2014年07月20日 16:54:03   投稿:hebedich   我要评论

这篇文章主要介绍了cgroup限制mongodb进程内存大小,需要的朋友可以参考下

以限制mongodb的内存大小为例。

mkdir /cgroup/memory/test/ 
echo 50M > /cgroup/memory/test/memory.limit_in_bytes 
echo 50M > /cgroup/memory/test/memory.memsw.limit_in_bytes 
cgexec -g memory:test mongod -port 27017 --bind_ip 127.0.0.1 --dbpath /var/lib/mongo

通过cgroup限制后,当内存达到限额,进程会被kill。

[root@centos mongo]# cgexec -g memory:test mongod -port 27017 --bind_ip 127.0.0.1 --dbpath /var/lib/mongo 
2014-07-18T23:20:53.228+0800 [initandlisten] MongoDB starting : pid=2529 port=27017 dbpath=/var/lib/mongo 64-bit host=centos 
2014-07-18T23:20:53.228+0800 [initandlisten] db version v2.6.3 
2014-07-18T23:20:53.228+0800 [initandlisten] git version: 255f67a66f9603c59380b2a389e386910bbb52cb 
2014-07-18T23:20:53.228+0800 [initandlisten] build info: Linux build12.nj1.10gen.cc 2.6.32-431.3.1.el6.x86_64 #1 SMP Fri Jan 3 21:39:27 UTC 2014 x86_64 BOOST_LIB_VERSION=1_49 
2014-07-18T23:20:53.228+0800 [initandlisten] allocator: tcmalloc 
2014-07-18T23:20:53.228+0800 [initandlisten] options: { net: { bindIp: "127.0.0.1", port: 27017 }, storage: { dbPath: "/var/lib/mongo" } } 
2014-07-18T23:20:53.304+0800 [initandlisten] journal dir=/var/lib/mongo/journal 
2014-07-18T23:20:53.304+0800 [initandlisten] recover : no journal files present, no recovery needed 
2014-07-18T23:20:53.374+0800 [initandlisten] waiting for connections on port 27017 
2014-07-18T23:20:57.838+0800 [initandlisten] connection accepted from 127.0.0.1:36712 #1 (1 connection now open) 
2014-07-18T23:21:15.077+0800 [initandlisten] connection accepted from 127.0.0.1:36713 #2 (2 connections now open) 
2014-07-18T23:21:52.342+0800 [conn2] getmore test.my_collection cursorid:34538199491 ntoreturn:0 keyUpdates:0 numYields:39 locks(micros) r:121572 nreturned:95052 reslen:4194299 202ms 
2014-07-18T23:21:53.376+0800 [clientcursormon] mem (MB) res:136 virt:12809 
2014-07-18T23:21:53.376+0800 [clientcursormon] mapped (incl journal view):12508 
2014-07-18T23:21:53.376+0800 [clientcursormon] connections:2 
2014-07-18T23:21:56.790+0800 [conn2] getmore test.my_collection cursorid:34538199491 ntoreturn:0 keyUpdates:0 numYields:88 locks(micros) r:142113 nreturned:95595 reslen:4194301 244ms 
Killed

数据查询脚本:

[root@centos data]# cat mongotestList.py 
import pymongo 
import time 
 
client = pymongo.MongoClient("localhost", 27017) 
db = client.test 
print db.name 
print db.my_collection 

for item in db.my_collection.find(): 
  print item

数据插入脚本:

[root@centos data]# cat mongotest2.py 
import pymongo 
import time 

client = pymongo.MongoClient("localhost", 27017) 
db = client.test 
print db.name 
print db.my_collection 

while True: 
  db.my_collection.save({time.ctime(): time.time()})

相关文章

  • mongodb在建立一个T级别的数据库时,进程挂掉的解决方法

    mongodb在建立一个T级别的数据库时,进程挂掉的解决方法

    这篇文章主要介绍了mongodb在建立一个T级别的数据库时,进程挂掉,需要的朋友可以参考下
    2017-03-03
  • MongoDB系列教程(二):MongoDB简介

    MongoDB系列教程(二):MongoDB简介

    这篇文章主要介绍了MongoDB系列教程(二):MongoDB简介,本文讲解了MongoDB介绍、MongoDB功能特性、mongoDB数据架构等内容,需要的朋友可以参考下
    2015-05-05
  • MongoDB插入数据的3种方法

    MongoDB插入数据的3种方法

    在MongoDB中,db.collection.insert()方法添加一个新文档到集合中。另外,db.collection.update()方法和db.collection.save()方法也能通过upsert操作添加新文档。upsert操作执行更新现有文档或者当文档不存在时插入一个新文档。
    2014-05-05
  • MongoDB使用指南--基本操作

    MongoDB使用指南--基本操作

    上篇文章,我们讲诉了MongoDB数据库的用户操作,本文将介绍如何基本操作MongoDB数据库,当然是基本的,最基本的操作,需要的朋友可以参考下
    2014-08-08
  • mongodb实现数组对象求和方法实例

    mongodb实现数组对象求和方法实例

    这篇文章主要给大家介绍了关于mongodb实现数组对象求和的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-01-01
  • windows下mongodb安装与使用图文教程(整理)

    windows下mongodb安装与使用图文教程(整理)

    这篇文章主要介绍了windows下mongodb安装与使用图文教程(整理)的相关资料,需要的朋友可以参考下
    2016-06-06
  • 详解清除MongoDB所占用的多余的磁盘空间的方法

    详解清除MongoDB所占用的多余的磁盘空间的方法

    MongoDB不会自动进行垃圾文件清理,不过我们可以借助自带的repairDatabase等功能来实现,下面我们就来详解清除MongoDB所占用的多余的磁盘空间的方法,附带一个如何格式化mongo shell的输出的小技巧:
    2016-06-06
  • mongoDB 4.0事务回滚的辛酸历程探究

    mongoDB 4.0事务回滚的辛酸历程探究

    这篇文章主要给大家介绍了关于mongoDB 4.0事务回滚的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用MongoDB具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2018-07-07
  • MySQL和MongoDB设计实例对比分析

    MySQL和MongoDB设计实例对比分析

    MySQL是关系型数据库中的明星,MongoDB是文档型数据库中的翘楚。
    2011-07-07
  • Java操作mongodb的模糊查询和精确查询

    Java操作mongodb的模糊查询和精确查询

    这篇文章主要介绍了Java操作mongodb的模糊查询和精确查询,使用regex关键字实现模糊查询操作,具体实现代码大家参考下本文
    2017-11-11

最新评论