匿名
未登录
登录
Linux78|wiki
搜索
查看“Elasticsearch优化”的源代码
来自Linux78|wiki
名字空间
页面
讨论
更多
更多
页面选项
查看
查看源代码
历史
←
Elasticsearch优化
因为以下原因,您没有权限编辑本页:
您所请求的操作仅限于该用户组的用户使用:
wiki:用户|用户
您可以查看与复制此页面的源代码。
=== 加大内存分配 === 一开始索引什么的都不多,量不大,所以都很轻松,后来量越来越大,默认的配置就有点吃不消了,打开一个页面,查询压力就会非常大。 这个时候可以通过加大es的jvm内存来优化。 默认情况下,Elasticsearch告诉JVM使用最小和最大大小为1 GB的堆。迁移到生产环境时,配置堆大小以确保Elasticsearch有足够的堆可用是很重要的。 Elasticsearch将通过(最小堆大小)和(最大堆大小)设置分配jvm.options中指定的整个堆 。Xms,Xmx可设置的值取决于服务器上可用的RAM量。一些好的建议是: 将最小堆大小(Xms)和最大堆大小(Xmx)设置为彼此相等。 Elasticsearch可用的堆越多,它可用于缓存的内存就越多。但请注意,过多的堆可能会使您陷入长时间的垃圾收集暂停。 设置Xmx为不超过物理RAM的50%,以确保有足够的物理RAM留给内核文件系统缓存。 最大内存不要超过32G,跨32G时,有一个现象,使用更多的内存,比如 40G,效果还不如31G! 比如我的主机是16核32G的主机,那么这时更改一下配置: vim /etc/elasticsearch/jvm.options -Xms16g -Xmx16g -Xss128m 然后重启es,会发现快很多了。 关于这一点,可以参考官方文档:https://www.elastic.co/guide/en/elasticsearch/reference/current/heap-size.html === 修改系统允许的最大文件打开数 === 并发连接数 echo "root soft nofile 65535" >> /etc/security/limits.conf echo "root hard nofile 65535" >> /etc/security/limits.conf echo "* soft nofile 65535" >> /etc/security/limits.conf echo "* hard nofile 65535" >> /etc/security/limits.conf echo -e "root soft nofile 65535\nroot hard nofile 65535\n* soft nofile 65535\n* hard nofile 65535\n" >> /etc/security/limits.conf sed -i 's#4096#65535#g' /etc/security/limits.d/20-nproc.conf 一个是修改最大文件打开数,一个是最大进程数,其中root表示管理员,*表示普通用户。
返回至
Elasticsearch优化
。
导航
导航
首页
最近更改
随机页面
栏目
Nginx
Kubernetes
Spring Cloud
Wiki工具
Wiki工具
特殊页面
页面工具
页面工具
用户页面工具
更多
链入页面
相关更改
页面信息
页面日志