怎样正确查看Linux的内存占用情况

租的VPS是256M的内存,所以要经常查看一下内存的使用情况,查看内存使用的命令是free -m,m是以MB的单位显示内存的使用情况,下面是我服务器上的内存使用情况:

root@656463:/home/huangyineng# free -m

            total       used       free     shared    buffers     cached

Mem:           248        226         22          0         21         74

-/+ buffers/cache:        130        118

Swap:          484          3        481


从上看出这个Linux系统一共有内存248M,但当前Linux 系统已经占用的内存有多少呢?大多数用户的答案是226M,其实不然。

当前VPS占用的内存应该是130M,也就是226下面那个数字:130,代表已经占用的内存。后面的那个118,代表当前Linux系统的可用内存。

"-/+ buffers/cache:"开头的这行才是实际的占用内存和可用内存。

为什么会这样?这是由Linux Kernel的内存管理方式决定的,buffers,cached可以看作是被程序或者内核用过的内存,这些内存曾经被使用过,但现在已经被释放了,释放之后Linux Kernel把他们当作buffers或cached ,这样下次有程序申请内存的时候,内核可以快速响应。所以buffers和cached部分的内存应该看成是可用内存。

所以,看内存使用情况,应该看"-/+ buffers/cache:"开头的这一行,如果这一行最后的数字接近0,那么说明Linux系统的内存快用完了,这时候Linux系统反应就比较慢。如果这个数字还比较大,那么Linux系统还有较多内存可用,系统不应该慢。


本文链接:怎样正确查看Linux的内存占用情况

2019-03-23 09:23

知识点

相关教程

更多

Hadoop查看目录空间使用情况

Hadoop查看目录空间使用情况  命令:hadoop fs -count [-q] <paths>  统计出目录数、文件数及指定路径下文件的大小,输出列为: DIR_COUNT, FILE_COUNT, CONTENT_SIZE FILE_NAME.  带上-q选项后的输出列为: QUOTA, REMAINING_QUATA, SPACE_QUOTA, REMAINING_SPACE

solr:关于spell的使用情况

首先,要说一下solrConfig.xml中关于spell的相关配置。    1、勾选,启动 spellChecker功能  2、  3、是否重新加载  4、输入要纠错的query  5、指定使用 的checkspeller  6、配置拼写检查提示结果的个数(可以根据需要适当加大),即suggestion 的最大个数。  7、Return only suggested words that are

linux中查看文件或者目录大小

linux查看一个文件或才目录的大小,可以用命令:du -hs 文件名或目录名称 我们来看看linxu的帮助文件du --help

横瓜执导众程序员开展大讨论关于C、JAVA及其它主流IT技术使用情况和优点缺点。

横瓜执导众程序员开展大讨论关于C、JAVA及其它主流IT技术使用情况和优点缺点。   遥执乾坤(44758121)18:21:23   mysql据说只能使用一个索引,我这里几乎所有字段都有索引。   但每个字段就算用索引,也需要扫描至少100w以上记录。   横瓜(601069289)18:23:12   mysql支持16个索引   对1-3字段索引属于优质的数据库结构   横瓜(601069

Linux 磁盘管理-查看文件可用空间


                            

linux-kill及其他命令

一、上图中ps -ef|grep tomcat是查看当前tomcat进程情况,如果有占用情况则用命令 kill -9 进程号 二、chmod 777 文件名 是给予当前登录用户对该文件的最高操作权限。然后就可以用rm -rf 、rm -fr文件夹 三、linux解压war文件 source /etc/profile 使下面的linux的war包解压命令生效。 jar -xvf phoenixPro

usic AS下如何正确设置solr

Apache Solr是一个基于Apache Lucene的企业级开源全文检索服务器,它支持层面搜索、命中醒目显示和多种输出格式。 Solr需要运行在一个servlet 容器里(因此目前几乎所有常见的Servlet容器都可以满足Solr的运行需要)。solr在lucene的上层提供了一个基于HTTP/XML的Web Services,应用需要通过这个服务与solr进行交互。 关于Solr的详细介绍

怎样解决内存溢出

如标题  Java怎样解决内存溢出

Hadoop Map/Reduce内存限制

如何设置Hadoop Map/Reduce任务的内存限制?        不设置时默认都是-1,无限制 相关介绍请参考Hadoop-0.20.2 作业内存控制策略分析 http://www.linuxidc.com/Linux/2012-06/63310.htm 设置时请注意其大小关系。比如你设置了mapred.cluster.map.memory.mb为1024 ,然后你提交任务时没有设置map

一次内存泄露问题的排查

系统对外提供的Solr查询接口,在来自外部调用的压力加大之后,就会出现solr查询报Read Timed Out的异常,从表面现象上看是此时solr核压力过大,无法响应过多的查询请求。    但实际上此时并发查询压力并不是很大,那么为何solr核会无法及时响应查询请求呢?首先用top查看了下load average,也是很低,也佐证了系统本身压力并不大。  然后,用jstack –l <pi

tomcat 内存泄露的问题,让人很纠结!

最近很纠结,1月初发现tomcat经常重启,打堆栈发现竟是内存泄露,这几天认认真真的把部署在上面的所有模块一一进行了一次排查,没有发现令人可疑的地方。缓存没有问题,没有静态容器,哪位高手看看我该从哪一方面下手,谢谢了!

设置Hadoop各个应用的内存

NameNode、Jobtracker、Datanode、Tasktracker设置 conf/Hadoop-env.sh 修改HADOOP_HEAPSIZE值,默认为1000MB,标题中四个应用将使用相同的配置。如果希望每个应用不一样,可以修改"conf/hadoop-env.sh"中"HADOOP_XXX_OPTS",举例比如希望修改NN的Head Si

JAVA基础:解读内存优化编程

java提供了一个不错的工具用来查找内存溢出,java.lang.Runtime.freeMemory() 。它可以返回当前的剩余内存数,将它适当的安放在代码中可以有效的监测内存使用状况。

JAVA基础:解读内存优化编程

java提供了一个不错的工具用来查找内存溢出,java.lang.Runtime.freeMemory() 。它可以返回当前的剩余内存数,将它适当的安放在代码中可以有效的监测内存使用状况。

后三十年啥情况?

女票说:想当年追我的时候,困也陪我熬夜到天亮!现在叫你哄我吃个面包,就说老婆,你有点困了!再过十年以后,你可能就会对我说,你爱吃不吃!!男人,我已经看透了你后三十年的表现了

最新教程

更多

java线程状态详解(6种)

java线程类为:java.lang.Thread,其实现java.lang.Runnable接口。 线程在运行过程中有6种状态,分别如下: NEW:初始状态,线程被构建,但是还没有调用start()方法 RUNNABLE:运行状态,Java线程将操作系统中的就绪和运行两种状态统称为“运行状态” BLOCK:阻塞状态,表示线程阻塞

redis从库只读设置-redis集群管理

默认情况下redis数据库充当slave角色时是只读的不能进行写操作,如果写入,会提示以下错误:READONLY You can't write against a read only slave.  127.0.0.1:6382> set k3 111  (error) READONLY You can't write against a read only slave. 如果你要开启从库

Netty环境配置

netty是一个java事件驱动的网络通信框架,也就是一个jar包,只要在项目里引用即可。

Netty基于流的传输处理

​在TCP/IP的基于流的传输中,接收的数据被存储到套接字接收缓冲器中。不幸的是,基于流的传输的缓冲器不是分组的队列,而是字节的队列。 这意味着,即使将两个消息作为两个独立的数据包发送,操作系统也不会将它们视为两个消息,而只是一组字节(有点悲剧)。 因此,不能保证读的是您在远程定入的行数据

Netty入门实例-使用POJO代替ByteBuf

使用TIME协议的客户端和服务器示例,让它们使用POJO来代替原来的ByteBuf。

Netty入门实例-时间服务器

Netty中服务器和客户端之间最大的和唯一的区别是使用了不同的Bootstrap和Channel实现

Netty入门实例-编写服务器端程序

channelRead()处理程序方法实现如下

Netty开发环境配置

最新版本的Netty 4.x和JDK 1.6及更高版本

电商平台数据库设计

电商平台数据库表设计:商品分类表、商品信息表、品牌表、商品属性表、商品属性扩展表、规格表、规格扩展表

HttpClient 上传文件

我们使用MultipartEntityBuilder创建一个HttpEntity。 当创建构建器时,添加一个二进制体 - 包含将要上传的文件以及一个文本正文。 接下来,使用RequestBuilder创建一个HTTP请求,并分配先前创建的HttpEntity。

MongoDB常用命令

查看当前使用的数据库    > db    test  切换数据库   > use foobar    switched to db foobar  插入文档    > post={"title":"领悟书生","content":"这是一个分享教程的网站","date":new

快速了解MongoDB【基本概念与体系结构】

什么是MongoDB MongoDB is a general purpose, document-based, distributed database built for modern application developers and for the cloud era. MongoDB是一个基于分布式文件存储的数据库。由C++语言编写。旨在为WEB应用提供可扩展的高性能数据存储解决方案。

windows系统安装MongoDB

安装 下载MongoDB的安装包:mongodb-win32-x86_64-2008plus-ssl-3.2.10-signed.msi,按照提示步骤安装即可。 安装完成后,软件会安装在C:\Program Files\MongoDB 目录中 我们要启动的服务程序就是C:\Program Files\MongoDB\Server\3.2\bin目录下的mongod.exe,为了方便我们每次启动,我

Spring boot整合MyBatis-Plus 之二:增删改查

基于上一篇springboot整合MyBatis-Plus之后,实现简单的增删改查 创建实体类 添加表注解TableName和主键注解TableId import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baom

分布式ID生成器【snowflake雪花算法】

基于snowflake雪花算法分布式ID生成器 snowflake雪花算法分布式ID生成器几大特点: 41bit的时间戳可以支持该算法使用到2082年 10bit的工作机器id可以支持1024台机器 序列号支持1毫秒产生4096个自增序列id 整体上按照时间自增排序 整个分布式系统内不会产生ID碰撞 每秒能够产生26万ID左右 Twitter的 Snowflake分布式ID生成器的JAVA实现方案