【四】Linux-服务器资源压榨

开始写之前先列一个提纲,提纲列好了,后面读起来就方便了。本文先讲拿到一台服务器之后怎么去了解这台机器,之后看看服务器的配置,最后结合案例分析进程占用资源过高的问题。

一、Linux系统资源分析

        服务器资源具体指的是cpu,内存,网络,io,而工程师们时刻在考虑怎么更大化的压榨这些资源,要想充分压榨服务器,首先我们要对服务器有充分的认识,所谓知己知彼,百战不殆。

        拿到一台服务器,首先我会看看服务器版本 lsb_release -a,如下所示:

从返回结果可以看出服务器是centos,版本7.4.1708,之后我会看看看看本机的IP

查到服务器的版本消息之后我就会去了解cpu是几核,内存多大,网络带宽的情况,这和买了一台笔记本一样,买的过程中我们都会去看看硬件配置。

这一块可以参考我另一篇文章Linux—查看cpu、磁盘、内存、网络的命令_张狂年少的博客-CSDN博客

使用netstat -ntlp看看服务器上启动了那些服务和占用了那些端口,这样一来对服务器启动了哪些服务有个了解

如果是查看java服务还可以用jps命令

可以看到我启动了两个jar包

二、Linux服务器中进程占用服务器资源分析

查看服务器占用资源一般使用top命令

由命令查询结果可以看出cpu的几核,内存使用情况还有服务器负载情况,列表还有所有进程的资源动态使用情况,可以根据cpu和内存排序,这个就和windows的任务管理器一样,有了这些我们就可以很直观的看到进程的资源使用情况了。

三、案例

1. jenkins 自动构建时间太长

* 查询服务器资源使用情况

查看进程内存占用情况

  • 1. top

        直接使用top命令,查看%MEM的内容。
        可以选择按进程查看或者按用户查看。如想查看oracle用户的进程内存使用情况的话可以使用如下的命令:
        $ top -u oracle
 

  • 2. pmap

        用pmap命令查看进程相关信息,其中有占用的内存情况,如下所示(进程号pid可以通过ps命令查看):
        $ pmap -d pid
 

  • 3. ps

        命令如下:
        $ ps -e -o 'pid,cmd,%cpu,%mem,rsz,vsz,stime,user,uid'

        上例查找jenkins进程的内存使用情况,并由大到小的顺序排列:
        $ ps -e -o 'pid,cmd,%cpu,%mem,rsz,vsz,stime,user,uid' | grep jenkins | sort -nrk5

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值