2013-06-27 46 views
0

我使用铁轨 - 轮胎 - elasticsearch,一切主要工作得很好,但只是不时,我的服务器开始很慢。所以我必须重新启动elasticsearch服务,然后一切再次正常。铁轨 - 轮胎 - elasticsearch:需要重新启动elasticsearch服务器

graph from newrelic

我的印象是,它之后的批量插入(约6000产品)发生。它可以链接?最后插入像2分钟最大,但仍服务器后有问题

编辑: 最后它没有链接到批量插入

我在日志中仅此行

[2013-06-29 01:15:32,767][WARN ][monitor.jvm    ] [Jon Spectre] [gc][ParNew][26438][9941] duration [3.4s], collections [1]/[5.2s], total [3.4s]/[57.7s], memory [951.6mb]->[713.7mb]/[989.8mb], all_pools {[Code Cache] [10.6mb]->[10.6mb]/[48mb]}{[Par Eden Space] [241.1mb]->[31mb]/[273mb]}{[Par Survivor Space] [32.2mb]->[0b]/[34.1mb]}{[CMS Old Gen] [678.3mb]->[682.6mb]/[682.6mb]}{[CMS Perm Gen] [35mb]->[35mb]/[166mb]} 

有人不明白这一点?

回答

0

这只是在黑暗中刺入,但从您的报告来看,可能是您的java虚拟机的内存设置不正确。

ElasticSearch使用Java构建,因此可以在JVM上运行。每个JVM进程在启动时都会分配一组定义的内存。当可用内存不足时,它会崩溃,因此必须进行垃圾回收以释放空间。当你在内存限制上运行一个Java进程时,它会被很多GC运行占用,并且会变得非常慢。

您可以查看java jmx管理控制台了解进程正在执行的操作以及它拥有多少内存。