启动elasticsearch报错,错误提示如下:

initial heap size [268435456] not equal to maximum heap size [536870912]; this can cause resize pauses and prevents mlockall from locking the entire heap

翻译一下:

[1] :初始堆大小[268435456]不等于最大堆大小[536870912];这可能导致调整大小暂停,并阻止mlockall锁定整个堆

这个很好理解,就是,我们设置jvm堆内存的时候,初始化堆内存和最大堆内存设置不一致导致的。

解决方案就是:去/config/jvm.options中修改一下配置即可

将这两个配置改为一致大小

此处引申一下:

我们设置堆内存的时候,通常有一个 Xms   Xmx

分别对应的了初始堆内存大小,最大堆内存大小;

当我们堆内存占用超出初始堆内存大小的时候,那么就会自动扩容到最大堆内存大小。

当堆内存占用低于一定大小(此处非初始堆内存大小,参考数组扩容阈值),将会自动缩小堆内存大小。

那么上述警告,就是和jvm内存模型特性一致,当 我们对堆内存扩容的时候,会有一定的锁定时间,那么这个时候如果把堆内存锁定了,那么就会将所有用户线程全部暂停,将会长时间未响应,极大影响了线上环境用户使用。

那参考此jvm内存模型特性,我们通常对自己的jvm程序设定堆内存的时候,通常来说,都会将初始化堆内存和最大堆内存设置为一样,这样,就避免了mlockall锁定整个堆。(现在应该没有谁还会考虑内存的节约使用吧)

并且此处再引申一个问题,那么就是jvm的垃圾回收算法,有很多,目前10种,此处讲讲串行回收算法,在回收算法中,存一个清除整理机制,它就是需要将所有用户线程暂停,然后进行清除所有不可达的资源占用,然后再进行内存碎片整理。

整理好了之后,再回复所有的用户线程。想想而知,我们如果线上环境频繁GC,对于老年代的话,如果GC,那么将会对所有代进行回收,这样将会产生严重问题。

此可以看看我的文章,有一篇讲了一下GC;

initial heap size [268435456] not equal to maximum heap size [536870912];相关推荐

  1. mycat 启动失败 The specified size exceeds the maximum representable size JVM exited while loading the a

    错误信息: [root@server1 bin]# ./mycat console Running Mycat-server... wrapper  | --> Wrapper Started ...

  2. mysql text 最大长度 报错 Row size too large. The maximum row size for the used table type

    数据类型长度如下 TINYTEXT 256 bytes   TEXT 65,535 bytes ~64kb MEDIUMTEXT  16,777,215 bytes ~16MB LONGTEXT 4, ...

  3. MySQL【问题记录 01】报错 1709 - Index column size too large. The maximum column size is 767 bytes. 可能是最简单的方法

    1.问题重现 CREATE TABLE `xxl_job_registry` (`id` int(11) NOT NULL AUTO_INCREMENT,`registry_group` varcha ...

  4. Spring Boot 批量上传: The field files exceeds its maximum permitted size of 1048576 bytes.

    Spring Boot 批量上传异常: org.apache.tomcat.util.http.fileupload.FileUploadBase$FileSizeLimitExceededExcep ...

  5. oracle ||#039; where #039;||condition;,帝国cms后台添加字段提示#039;Row size too large. The maximum row size...

    今天在帝国cms后台创建系统模型,添加字段时报了一个错误,ERROR 1118 (42000): Row size too large. The maximum row size for the us ...

  6. 1709 - Index column size too large. The maximum column size is 767 bytes.

    1,mysql导入同事发的sql文件报如下错误:1709 - Index column size too large. The maximum column size is 767 bytes. 2, ...

  7. mysql 提示The maximum column size is 767 bytes.

    问题产生场景 mysql建表语句,创建时,提示:Index column size too large. The maximum column size is 767 bytes. 1.1 语句如下: ...

  8. 解决问题:The field file exceeds its maximum permitted size of 1048576 bytes

    错因描述: springboot项目使用文件上传失败,上传是个Excel文件,大小为1.35M The field file exceeds its maximum permitted size of ...

  9. 解决因nginx配置导致文件上传失败的问题 The filed file exceeds its maximum permitted size of 1048576 bytes

    解决因nginx配置问题导致文件上传失败的问题 1.问题背景 2.问题截图 3.问题分析 4.问题解决(修改nginx的配置) 5.解决之后的"后遗症"(截图) 6.分析并解决&q ...

最新文章

  1. 2021年大数据Flink(三十二):​​​​​​​Table与SQL案例准备 API
  2. java程序员修炼之道 pdf_?活动丨和大咖云风来场1对1交流,分享《程序员修炼之道》心得...
  3. 【NOI2014】起床困难综合症 贪心
  4. xss绕过字符过滤_IE8 xss filter bypass (xss过滤器绕过)
  5. python socket接收图像 数据_python中socket接受数据的三种方法 | 学步园
  6. 混合开启服务-----百度音乐盒
  7. js 数组 常用方法
  8. Host is not allowed to connect to this MySQL server错误的解决办法
  9. Internet Download Manager 6.32.6 V2 下载工具
  10. AD20.0.13初学
  11. 关于三角形外心性质的探究
  12. 瀚高数据库和mysql区别,瀚高数据库----select用法
  13. 决策树ID3、C4.5和CART算法总结,及案例计算
  14. 【kuangbin】简单搜索 - 13.非常可乐【BFS】
  15. 微信小程序——商品列表
  16. springboot定制和关闭banner
  17. (翻译)黑底白字样式的使用时机
  18. ARM开发(4)基于STM32的矩阵键盘按键控制TM1629A LED显示
  19. [附源码]java毕业设计大学教师年终考核管理信息系统
  20. 华为3108raid安linux,华为服务器 RAID卡配置 SR430 LSISAS3108(EFI/UEFI模式)

热门文章

  1. Anaconda中python安装模块命令
  2. 儒豹送笔记本活动开始了!!!!
  3. ruby游戏框架:gosu与chingu(基本概念)
  4. 揭秘抖音最新玩法“抖音两元店”背后的套路。丨国仁网络资讯
  5. GDAL for Python教程(2)
  6. 软考(计算机技术与软件专业技术资格)简介
  7. Mathpix使用手册
  8. C语言中定义bool类型出错
  9. 焦点元素,以及js如何获取焦点元素
  10. supersoket2.0 预告片