即使是不成熟的尝试,也胜于胎死腹中的策略。

elasticsearch写入性能峰值只有600tps,但CPU利用率仅70%没有用满。请问是什么原因呢

Elasticsearch | 作者 Ipromise | 发布于2019年11月11日 | 阅读数:1916

测试拓扑:1个master节点(CPU2核,服务器内存8G),2个数据节点(CPU2核,服务器内存32G)。三个节点分别部署在三台服务器上。

测试表现:向数据节点1发送写入请求,写入速率约为600个请求每秒,大量请求返回429(reject,队列满)。但数据节点1、2的CPU利用率仅百分60%,内存60%。并未达到性能极限。

问题1:为何抛出大量429错误,CPU却没有跑满?
问题2:如何让CPU跑到90%以上?
 
追加:听从社区上大佬的意见后,写入请求中不再使用大量的bulk请求,不再返回大量429错误,但CPU和内存依然只有60%,没有用满,目前还不知道为什么写入速率低但CPU内存没用满。
已邀请:

everything - 80后IT

赞同来自:

充分利用硬件全部能力是理想的,如果真达到90% cpu使用率,内存90%,那集群也会出现问题的。
最好还是有一些保留,比如最大达到cpu80%,cpu负载达到65%,内存达到75%,io读写,应该也不要打满,网卡流量也不能满,
满了不能说你充分利用硬件性能了,而是需要扩容了,否则就到瓶颈了,稍微再来点压力,挂了。
 

five

赞同来自:

硬盘io看一下

要回复问题请先登录注册