2014-09-29 73 views
3

遇到在那里我发现rethinkdb服务的情况后已关闭了未知的原因,我发现它使用了大量的内存:RethinkDB:​​为什么rethinkdb服务使用这么多内存?

# free -m 
        total  used  free  shared buffers  cached 
    Mem:   7872  7744  128   0   30   68 
    -/+ buffers/cache:  7645  226 
    Swap:   4031  287  3744 

# top 
top - 23:12:51 up 7 days, 1:16, 3 users, load average: 0.00, 0.00, 0.00 
Tasks: 133 total, 1 running, 132 sleeping, 0 stopped, 0 zombie 
Cpu(s): 0.0%us, 0.2%sy, 0.0%ni, 99.8%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st 
Mem: 8061372k total, 7931724k used, 129648k free, 32752k buffers 
Swap: 4128760k total, 294732k used, 3834028k free, 71260k cached 

    PID USER  PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND               
1835 root  20 0 7830m 7.2g 5480 S 1.0 94.1 292:43.38 rethinkdb               
29417 root  20 0 15036 1256 944 R 0.3 0.0 0:00.05 top                
    1 root  20 0 19364 1016 872 S 0.0 0.0 0:00.87 init 



# cat log_file | tail -9 
2014-09-22T21:56:47.448701122 0.052935s info: Running rethinkdb 1.12.5 (GCC 4.4.7)... 
2014-09-22T21:56:47.452809839 0.057044s info: Running on Linux 2.6.32-431.17.1.el6.x86_64 x86_64 
2014-09-22T21:56:47.452969820 0.057204s info: Using cache size of 3327 MB 
2014-09-22T21:56:47.453169285 0.057404s info: Loading data from directory /rethinkdb_data 
2014-09-22T21:56:47.571843375 0.176078s info: Listening for intracluster connections on port 29015 
2014-09-22T21:56:47.587691636 0.191926s info: Listening for client driver connections on port 28015 
2014-09-22T21:56:47.587912507 0.192147s info: Listening for administrative HTTP connections on port 8080 
2014-09-22T21:56:47.595163724 0.199398s info: Listening on addresses 
2014-09-22T21:56:47.595167377 0.199401s info: Server ready 

这似乎是很多考虑文件大小:

# du -h 
4.0K ./tmp 
156M . 

我是否需要配置不同的缓存大小?你认为这与发现令人惊讶的服务有关吗?我使用v1.12.5

回答

4

有在以前版本的一些漏洞,主要一个是https://github.com/rethinkdb/rethinkdb/issues/2840

你或许应该更新RethinkDB - 当前版本是1.15。 如果运行1.12,则需要导出数据,但这应该是自1.14引入无缝迁移以来最后一次需要它的数据。

0

Understanding RethinkDB memory requirements - RethinkDB

默认情况下,RethinkDB根据公式自动配置的缓存大小限制(available_mem - 1024 MB)/ 2 available_mem

您可以通过配置文件更改此因为它们记录了文件,或者从命令行以一个大小(以MB为单位)更改它:

rethinkdb --cache-size 2048 
相关问题