如何查看linux服务器内存占用情况

如何查看linux服务器内存占用情况,第1张

通你的描述,这里以我正在使用的centos 72 版本系统为例, 可以通过如下命令来进行查看:

[root@Backup2 data]# cat /etc/redhat-release

CentOS Linux release 721511 (Core)

[root@Backup2 data]#

[root@Backup2 data]#free    -g  

或者

[root@Backup2 data]# free    -m  

通过上述命令就可以进行查看了,希望能帮到你。。。。。。

使用知行之桥EDI系统时,由于业务数据量的增多,难免会遇到一些系统异常情况,为了保证企业生产环境的稳定运行,EDI系统自带了错误邮件通知功能。此功能保证了在EDI系统自动处理数据的过程中可以将异常信息及时告知用户,使用户收到邮件及时处理,保证数据的正常传输。

那么除了一些常见的异常情况,随着企业业务数据量的增大,现有服务器环境可能无法提供足够的磁盘空间存放数据处理的日志和文件,特别是在使用跨平台版本(JAVA版本)的知行之桥EDI系统时,此情况比较常见。基于此背景,我们提供了堆内存占用超过80% 邮件预警以及磁盘空间使用率超过80%邮件预警功能。具体实现步骤如下:

Java堆内存管理是影响性能的主要因素之一,堆内存过高可能会造成内存溢出,导致进程无法无法访问,从而使EDI系统无法正常运行。为了避免这一问题的出现,提前预警,可以参考以下步骤进行配置:

1新建监控脚本java_heap_usage_monitorsh文件,监控脚本的具体代码如下(注:其中_java=/home/java/jdk180_201/bin/java是当前环境中java执行路径,需要根据自身情况进行修改):

2将监控脚本java_heap_usage_monitorsh文件拷贝至部署EDI的服务器。 3给予java_heap_usage_monitorsh文件执行权限,修改文件权限命令如下:

4在服务器上测试监控脚本是否工作,执行以下命令,成功执行可以看到当前EDI系统占用堆内存的大小:

5在EDI系统页面创建Script端口,修改监控脚本java_heap_usage_monitorsh文件的存放路径,以及邮件预警收件箱地址。

Script端口具体代码如下:

6设置Script端口自动化功能,设置定时接收,可以选择每天8点自动获取检测堆内存使用情况:

7配置完成后,知行之桥EDI系统每天8点检测堆内存使用情况,若是堆内存使用超过80%会收到如下主题提示的邮件,邮件正文包含当前进程堆内存使用率:

磁盘空间不足也是影响EDI环境正常运行的一大原因,磁盘空间不足会导致数据无法正常处理,日志信息无法写入。同样为了避免这种情况出现,提前预警,可以参考以下方法进行配置:

1在EDI系统页面新建Script端口,修改邮件预警收件箱地址信息。

Script端口具体代码如下:

2设置Script端口自动化功能,设置定时接收,可以选择每天早上8点自动获取检测磁盘空间使用情况:

3配置完成后,EDI系统每天8点检测磁盘空间使用情况,若是磁盘空间使用率超过80%会收到如下主题提示的邮件,邮件正文包含当前磁盘空间使用率:

扩展阅读:EDI是什么? | EDI通信专家

$ free -m\x0d\ total used free shared buffers cached\x0d\ Mem: 1002 769 232 0 62 421\x0d\ -/+ buffers/cache: 286 715\x0d\ Swap: 1153 0 1153\x0d\ 第一部分Mem行:\x0d\ total 内存总数: 1002M\x0d\ used 已经使用的内存数: 769M\x0d\ free 空闲的内存数: 232M\x0d\ shared 当前已经废弃不用,总是0\x0d\ buffers Buffer 缓存内存数: 62M\x0d\ cached Page 缓存内存数:421M\x0d\ 关系:total(1002M) = used(769M) + free(232M)\x0d\ 第二部分(-/+ buffers/cache):\x0d\ (-buffers/cache) used内存数:286M (指的第一部分Mem行中的used - buffers - cached)\x0d\ (+buffers/cache) free内存数: 715M (指的第一部分Mem行中的free + buffers + cached)\x0d\ 可见-buffers/cache反映的是被程序实实在在吃掉的内存,而+buffers/cache反映的是可以挪用的内存总数。\x0d\ 第三部分是指交换分区, 我想不讲大家都明白\x0d\ 我想大家看了上面,还是很晕第一部分(Mem)与第二部分(-/+ buffers/cache)的结果中有关used和free为什么这么奇怪\x0d\ 其实我们可以从二个方面来解释\x0d\ 对 *** 作系统来讲是Mem的参数buffers/cached 都是属于被使用,所以它认为free只有232\x0d\ 对应用程序来讲是(-/+ buffers/cach)buffers/cached 是等同可用的,因为buffer/cached是为了提高程序执行的性能,当程序使用内存时,buffer/cached会很快地被使用。\x0d\ 所以,以应用来看看,以(-/+ buffers/cache)的free和used为主所以我们看这个就好了另外告诉大家一些常识Linux为了提高磁盘和内存存取效率, Linux做了很多精心的设计, 除了对dentry进行缓存(用于VFS,加速文件路 径名到inode的转换), 还采取了两种主要Cache方式:Buffer Cache和Page Cache。前者针对磁盘块的读写,后者针对文件inode的读写。这些Cache能有效缩短了 I/O系统调用(比如read,write,getdents)的时间。\x0d\ 记住内存是拿来用的,不是拿来看的不象windows, 无论你的真实物理内存有多少,他都要拿硬盘交换文件来读这也就是windows为什么常常提示虚拟空间不足的原因你们想想,多无聊,在内存还有大部分 的时候,拿出一部分硬盘空间来充当内存硬盘怎么会快过内存所以我们看linux,只要不用swap的交换空间,就不用担心自己的内存太少如果常常 swap用很多,可能你就要考虑加物理内存了这也是linux看内存是否够用的标准哦

如今越来越来的系统中使用 redis 作为缓存系统,但是随着用户量的增长,业务数据不断增多,redis服务器的内存空间有可能会到瓶颈了,及时观察redis中的各种键内存占用多少,会方便我们评估何时升级redis服务器规格,以及对于是否需要进行程序优化来设计合理的存储结构都会有很大帮助,下面给大家介绍两款工具 rdr redis-rdb-tools ,可以很好的满足我们的需要

详细使用参考官方仓库:>

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zz/13080762.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-30
下一篇 2023-05-30

发表评论

登录后才能评论

评论列表(0条)

保存