1.进程与线程的定义与区别

进程是具有一定独立功能的程序关于某个数据集合上的一次运行活动,是系统进行资源分配和调度的一个独立单位[例如电脑上的不同程序]

线程是进程的一个实体,是cpu调度和分派的基本单位,它是比进程更小的能够独立运行的基本单位,线程自己基本上不拥有系统资源,只拥有一点在运行中必不可少的资源,一个线程可以创建和撤销另一个线程

区别:

一个线程只能属于一个进程,而一个进程可以拥有多个线程

线程是进程工作的最小但闻

一个进程会分配一个地址空间,进程与线程之间不共享地址空间,即不共享内存

同一个进程下的不同的多个线程,共享父进程的地址空间

线程在执行过程中,需要协作同步,不同进程的线程间要利用消息通信的办法实现同步

线程作为调度和分配的基本单位,进程作为拥有资源的基本单位

2.进程的优点与缺点

优点:

每个进程互相独立,不影响主程序的稳定性,子进程奔溃不影响其他进程

通过增加cpu,就可以扩充性能

可以尽量减少线程的加锁与解锁的影响,极大的提高了性能

缺点:

逻辑控制复杂,需要和主程序交互

多进程调度开销大

3.线程的优点与缺点

优点:

程序逻辑和控制方式简单

所有线程可以直接共享内存和变量等

线程方式消耗的总资源比进程方式少

缺点:

每个线程与主程序共用地址空间,最大内存地址受限

线程之间的同步和加锁不易控制

一个线程的崩溃可能影响到整个程序的稳定性

4.top说明

在单核cpu中load average的值为1时表示满负荷状态,同理在多核cpu中满负荷的load average的值为1*cpu核数

top中的load average:系统的运行队列的平均利用率,也可以认为是可运行进程的平均数,三个值分别表示在最后的1分钟,5分钟,15分钟的平均负载值

top命令的使用:

启动top之后:

按M根据驻留内存大小进行排序

按P根据cpu使用百分比大小进行排序

参数:

-d:设置top的显示间隔(以秒计)

-n:设置top退出前迭代的次数

-p:设置监控指定的PID

-b:设置批处理模式来启动top命令,当你想要在文件中保存输出时是很有用的

5.vmstat的使用

可以监控操作系统的进程状态,内存,虚拟内存,磁盘IO,cpu的信息。语法vmstat [-a][-n][-S unit][delay[count]]

6.netstat命令

用于显示与ip,tcp,udp和icmp协议相关的统计数据,一般用于检验本机各端口的网络连接情况

参数说明:

-n:拒绝显示别名,能显示数字的全部转化成数字

-l:仅列出有在listen(监听)的服务状态

-p:显示建立相关链接的程序名

-t:显示tcp相关选项

-u:仅显示udp相关选项

-i:显示自动匹配接口的信息

-c:每隔一个固定的时间,执行该netstat命令

Linux服务器监控性能测试的更多相关文章

  1. [转载]你需要知道的 16 个 Linux 服务器监控命令

    转载自: 你需要知道的 16 个 Linux 服务器监控命令 如果你想知道你的服务器正在做干什么,你就需要了解一些基本的命令,一旦你精通了这些命令,那你就是一个 专业的 Linux 系统管理员. 有些 ...

  2. 你应该知道的16个Linux服务器监控命令

    在不同的Linux发行版中,会有不同的GUI程序可以显示各种系统信息,比如SUSE Linux发行版中,就有非常棒的图形化的配置和管理工具YaST,KDE桌面环境里的KDE System Guard也 ...

  3. 转载:你需要知道的16个Linux服务器监控命令

    源址:http://web.itivy.com/article-653-1.html 如果你想知道你的服务器正在做干什么,你就需要了解一些基本的命令,一旦你精通了这些命令,那你就是一个 专业的 Lin ...

  4. 16个必须熟悉的linux服务器监控命令

    本原创文章属于<Linux大棚>博客. 博客地址为http://roclinux.cn. 文章作者为roc. == 原文:16 Linux Server Monitoring Comman ...

  5. 非常有用的15个Linux 服务器监控命令

    如果你想知道你的服务器正在做干什么,你就需要了解一些基本的命令,一旦你精通了这些命令,那你就是一个 专业的 Linux 系统管理员. 有些 Linux 发行版会提供 GUI 程序来进行系统的监控,例如 ...

  6. Linux 服务器 监控命令

    1 top top类似于windows下面的资源管理器.不仅能够从服务器整体上展示服务器的大致情况,还可以看到具体进程 耗费资源的情况. 展示内存.cpu.交换分区等信息 如上图: 第一行主要描述系统 ...

  7. 16个Linux服务器监控命令

    在不同的Linux发行版中,会有不同的GUI程序可以显示各种系统信息,比如SUSE linux发行版中,就有非常棒的图形化的配置和管理工具YaST,KDE桌面环境里的KDE System Guard也 ...

  8. 16 个 Linux 服务器监控命令

    如果你想知道你的服务器正在做干什么,你就需要了解一些基本的命令,一旦你精通了这些命令,那你就是一个 专业的 Linux 系统管理员. 有些 Linux 发行版会提供 GUI 程序来进行系统的监控,例如 ...

  9. linux服务器监控流量sh脚本

    服务器可能经常遇到服务器出带宽跑满,不知如何查询被哪个进程占用的情况,有一款开源的英文软件iftop功能比较强大可以查询相关信息,可能刚接触linux系统的朋友不太会使用,在此写了一个功能比较简单无需 ...

  10. Linux 服务器监控

    200 ? "200px" : this.width)!important;} --> 标签:iostat/free/top/dstat 概述 文字主要讲述使用linux自带 ...

随机推荐

  1. CONDITION EVALUATION DELTA热部署启动失效

    1.问题描述 我在启动一个SpringBoot项目的时候,在启动中控制台不停的打印日志(如下图所示) 2.产生原因 当时我是看了这篇文章后CONDITION EVALUATION DELTA_苦逼码农 ...

  2. 如何在Github上创建一个新仓库

    Hi,欢迎大家在有空的时候做客[江涛学编程],这里是2023年的第6篇原创文章,新年新气象,在这里我祝读者朋友们都好好的, 老规矩,拍拍手,上菜. 今天没有啥东西要跟家人们分享,就两个字,看图!!! ...

  3. Git Rebase和Merge的用法

    title: Git Rebase和Merge的用法 categories: 后端 tags: - Git Rebase和Merge是什么? merge和rebase的作用都是合并两个分支,其区别在于 ...

  4. [cocos2d-x]关于坐标系

    本文从cocos2dx官网看到,搬运过来学习一下. cocos2d-x3.X的坐标系 Cocos2d-x坐标系和OpenGL坐标系相同,都是起源于笛卡尔坐标系. 笛卡尔坐标系中定义右手系原点在左下角, ...

  5. 手把手教你写Dockerfile以及测试

    Dockerfile是什么? dockerfile就是用来构建docker镜像的构建文件,命令参数脚本. 如何使用Dockerfile? 1.编写一个Dockerfile文件 2.docker bui ...

  6. 解决win7嵌入式系统无法DoublePulsar问题

    0x01 前言 渗透过程中总是会遇到千奇百怪的问题,比如前段时间内网横向时用MS17010打台win7,EternalBlue已经提示win了,可是DoublePulsar就是死活一直报错,最后我查阅 ...

  7. DNS 是如何影响你冲浪速度的?

    本文详细介绍了 DNS 相关知识,包括 DNS 工作原理.如何提升域名解析速度.以及 DNS 记录与报文等内容. 1. 域名与域名服务器 在日常上网过程中,出于好记的原因,人们更喜欢在浏览器中输入网站 ...

  8. windows右键菜单扩展

    今天给大家分享一个我做的小工具,可以自定义扩展右键菜单的功能来提高工作效率,效果图如下: image 如上图,右键菜单多了几个我自定义的菜单 复制文件路径 复制文件夹路径 我的工具箱 <走配置文 ...

  9. http协议的请求方式

    协议 协议,就是通信双方去定义的一堆数据格式,并且共同遵守的标准. HTTP协议 HTTP是一个基于TCP/IP通信协议来传递数据,包括html文件.图像.结果等,即是一个客户端和服务器端请求和应答的 ...

  10. TCP与UDP、socket模块

    1.传输层之TCP与UDP协议 1.TCP协议 1.传输控制协议(也称为TCP协议或可靠协议)是为了在不可靠的互联网络上提供可靠的端到端字节流而专门设计的一个传输协议,(数据不容易丢失);造成数据不容 ...