ad

内存不可用报错:memory temporarily unavailable 的排查方法-英雄云拓展知识分享

匿名投稿 181 2024-02-01

【摘要】 1.当出现memory temporarily unavailable报错时,首先根据报错信息确认具体是哪个cn/dn报的,如果报错信息前面没有类型dnxxxx_xxxx这样的信息,就是cn报的,需要去每个cn的日志里排查是哪个cn2.通过free -g或top查看当前内存的使用情况,确认是操作系统内存耗尽,还是因为cn/dn的内存使用达到限制,如果已经没有现场,可以通过查看/var/log...

1.当出现memory temporarily unavailable报错时,首先针对报错信息确认具体是哪一个cn/dn报的,如果报错信息前面没有类型dnxxxx_xxxx这样的信息,就是cn报的,需要去每一个cn的日志里排查是哪一个cn

内存不可用报错:memory temporarily unavailable 的排查方法-英雄云拓展知识分享

2.经过free -g或top查看当前内存的使用情况,确认是操作系统内存耗尽,还是由于cn/dn的内存使用到达限制,如果已没有现场,可以经过查看/var/log/osinfo中的meminfo来确认当时操作系统的可用内存;

meminfo日志:

下面我们分两类场景讨论

场景一:

操作系统没有可用内存

对操作系统内存耗尽的场景,常常会触发操作系统的oom保护机制,这个在/var/log/message中可以搜索关键字‘kill’可以找到相干信息;

操作系统在oom杀掉进程时,会打印各个进程的内存使用情况,需要注意的是,rss列的单位其实不是b,而是page,在x86服务器上需要乘以4k来计算得到进程实际使用内存大小,在arm服务器上要乘以16k

经过比较进程被杀时的内存和max_process_memory,如果被杀时仍未到达max_process_memory,则需斟酌max_process_memory是不是设置过大,可调剂参数解决

如果进程被杀时内存已超过了max_process_memory,可以使用下面两个语句进一步分析

经常使用的监控语句

1)查看各类内存使用情况

select * from PV_total_memory_detail;

2)查看占用dynamic内存最高的语句

select * from (
select
sessid
,sum_total
,sum_free
,sum_used
,query_id
,query_start
,state
,waiting
,enqueue
,query
from
(
select
sessid
,sum(totalsize) as sum_total
,sum(freesize) as sum_free
,sum(usedsize) as sum_used
from
pv_session_memory_detail
group by
sessid ) a
,pg_stat_activity b
where
split_part ( a.sessid,'.' , 2 ) = b.pid )
order by
sum_total desc
limit 10;

注:上述第2条监控语句只是排查dynamic内存高的场景,如果第一条语句查出来的结果不是dynamic_used_memory或dynamic_peak_memory高,而是其他内存(other_used_memory、sctpcomm_used_memory等),则需另做排查,以后再开帖子详细介绍


场景2:

操作系统仍有可用内存,cn/dn实例的dynamic内存使用到达上限

对有现场的情况,可使用上面的第2条sql语句找到占用内存最高的语句,杀掉该语句并进行整改

对没有现场的情况,可以部署监控脚本等待下次复现

另外,如果实例是cn,常常是由于有大量的不下推语句,可以在日志中搜索can't be shipped查看不下推的语句,并进行整改


🌟 选择英雄云hpaPaaS 开启自动化、智能化企业转型未来 🌐       >>>>作为一款提供hpaPaaS平台服务的英雄云,有什么优势呢?面对数字化转型的挑战与机遇,选择一个适合自己企业的高度信息化、智能化和自动化的管理系统尤为重要。英雄云是一个值得考虑的选择。英雄云提供了一系列独特的优势,使其成为企业智能管理的首选。下面是英雄云的八大优势

1. 无需代码操作 💻

: 英雄云的平台无需编程知识,即可操作自定义的管理系统:ERP系统、CRM系统、进销存系统、人事行政OA系统、WMS系统等。这意味着用户无需拥有编程技能,也能轻松操控自己的系统。

2. 高度可定制性 🛠️

: 英雄云允许用户根据自己的业务需求、企业规模、成员人数、所需系统等等,进行高度定制服务;三大业务引擎:云表单(进阶版Excel)、工作流程(智能自动触发流程)以及仪表盘(可视化报表),帮助企业进行更简易的业务操作。

3. 减免重复工作 🔁

:无论是数据录入、审批流程还是报表生成,都可以轻松自动化,使员工能够专注于更有价值的任务。这种减免重复工作的方式不仅提高了工作效率,还降低了错误发生的可能性,为企业节省了时间和资源。

4. 生态系统集成 🌍

: 英雄云与其他常用企业应用和工具具有良好的生态系统集成能力,可以轻松集成与第三方系统,如财务软件、邮件服务等,实现全面的业务支持。

5. 数据分析与智能决策 📊

: 英雄云提供先进的数据分析工具如数据加工工厂,帮助用户更好地理解业务趋势和数据。这使得企业能够做出更明智的战略决策,优化业务流程。

6. 持续更新和改进

: 英雄云不断进行系统的更新和改进,以适应不断变化的业务环境和技术趋势。这意味着您始终能够使用最新的功能和性能提升。

7. 多样化部署 🌐

: 英雄云提供了多样化的部署选项,用户可以根据自身需求选择合适的部署方式,无需自主运维。无论是选择云端部署、私有云部署还是本地部署,英雄云都能提供灵活的解决方案。这意味着用户无需担心硬件维护、系统更新等问题,能够更专注于业务运营,降低了IT运营成本和风险。

8. 免费版本 💸

: 英雄云提供免费版本,用户可以在免费版本中获得一定数量的表单数据量和企业数据总量,为小型企业提供了经济实惠的选择。

选择英雄云作为您的数字化管理系统,将带来高度的灵活性、可定制性和效率提升。不管您的企业规模如何,英雄云都能满足您的需求,助力您的仓库管理更上一层楼。不妨注册一个英雄云账户,亲自体验这些优势,并让您的企业管理更加智能化和高效化


免责声明:

本网址(www.yingxiongyun.com)发布的材料主要源于独立创作和网友匿名投稿。此处提供的所有信息仅供参考之用。我们致力于提供准确且可信的信息,但不对材料的完整性或真实性作出任何保证。用户应自行验证相关信息的正确性,并对其决策承担全部责任。对于由于信息的错误、不准确或遗漏所造成的任何损失,本网址不承担任何法律责任。本网站所展示的所有内容,如文字、

上一篇:食来“云”转,华为云助老娘舅玩转电商餐饮
下一篇:代码托管(CodeHub)使用配置-英雄云拓展知识分享
相关文章

 发表评论

暂时没有评论,来抢沙发吧~

×