cpu时间

操作系统监控常用指标

我们两清 提交于 2020-02-26 05:48:10
system 监控项 说明 Problem CPU CPU steal time CPU使用内部虚拟机运行任务的时间所占cpu总时间的百分比 CPU softirq time cpu 软中断时间 CPU nice time 用户进程空间内改变过优先级的进程占用CPU百分比 CPU iowait time 用于进程等待磁盘I/O而使CPU处于空闲状态的比率 >20% CPU system time 空闲CPU百分比 CPU idle time 空闲时间 CPU interrupt time 中断时间 Processor load (15 min average per core) CPU 15分钟 负载 每核 Processor load (5 min average per core) CPU 5分钟 负载 每核 Processor load (1 min average per core) CPU 1分钟 负载 每核 五分钟平均值>5 Context switches per second 每秒上下文切换数 磁盘 Free disk space 磁盘剩余百分比 小于20% Free inodes 磁盘inode 小于20% Read:Bytes/sec 磁盘读速度 Write:Bytes/sec 磁盘写速度 内存 Total memory 内存总量 Available

metricbeat部署及监控linux系统指标汇总

ぐ巨炮叔叔 提交于 2020-02-26 05:48:04
Metricbeat 轻量型指标采集器 用于从系统和服务收集指标。从 CPU 到内存,从 Redis 到 Nginx,Metricbeat 能够以一种轻量型的方式,输送各种系统和服务统计数据。 系统级监控,更简洁 将 Metricbeat 部署到您所有的 Linux、Windows 和 Mac 主机,并将它连接到 Elasticsearch 就大功告成啦:您可以获取系统级的 CPU 使用率、内存、文件系统、磁盘 IO 和网络 IO 统计数据,以及获得如同系统上 top 命令类似的各个进程的统计数据。探索[在线演示]( https://demo.elastic.co/app/kibana#/dashboard/Metricbeat-system-overview?_g =() 安装 Metricbeat wget https://artifacts.elastic.co/downloads/beats/metricbeat/metricbeat-6.3.2-linux-x86_64.tar.gz tar -zxvf metricbeat-6.3.2-linux-x86_64.tar.gz mv metricbeat-6.3.2-linux-x86_64 metricbeat 配置 Metricbeat metricbeat.config.modules: path: ${path

Linux查看CPU和内存使用情况

孤者浪人 提交于 2020-02-26 05:14:39
在 CentOS 中,可以通过 top 命令来查看 CPU 使用状况。运行 top 命令后,CPU 使用状态会以全屏的方式显示,并且会处在对话的模式 -- 用基于 top 的命令,可以控制显示方式等等。退出 top 的命令为 q (在 top 运行中敲 q 键一次)。 top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器 可以直接使用top命令后,查看%MEM的内容。可以选择按进程查看或者按用户查看,如想查看oracle用户的进程内存使用情况的话可以使用如下的命令:   $ top -u oracle 内容解释:   PID:进程的ID   USER:进程所有者   PR:进程的优先级别,越小越优先被执行   NInice:值   VIRT:进程占用的虚拟内存   RES:进程占用的物理内存   SHR:进程使用的共享内存   S:进程的状态。S表示休眠,R表示正在运行,Z表示僵死状态,N表示该进程优先值为负数   %CPU:进程占用CPU的使用率   %MEM:进程使用的物理内存和总内存的百分比   TIME+:该进程启动后占用的总的CPU时间,即占用CPU使用时间的累加值。   COMMAND:进程启动命令名称  在命令行中输入 “top”   即可启动 top  q - 退出 top 详情请看原文,原文地址

X86汇编8.外部中断

。_饼干妹妹 提交于 2020-02-26 04:12:19
最近学习了X86汇编,其实无论是古老的8086还是现在i3/5/7/9,Xeon3/5,在最基本原理上,都是相通的,只是CPU位数,寻址空间,寄存器个数,指令集的扩充等方面有所不同,对于学习,8086永不过时。 1.端口的读写 在PC系统中,除和CPU通过总线相连的芯片(内存芯片)之外,还有3类芯片: (1)各接口卡(网卡、显卡)上的接口芯片,他们控制接口卡进行工作 (2)主板上的接口芯片,CPU通过它们对部分外省进行访问 (3)其他芯片,用来存储相关的系统信息,或进行相关的输入、输出处理 这些芯片都有一组可以由CPU读写的寄存器,这些寄存器物理上处于不同芯片中,但是都与CPU总线相连,可以通过CPU总线对他们进行控制,从CPU角度,将这些寄存器都称为端口,对他们进行统一编址,从而建立了一个统一的端口地址空间,每一个端口在地址空间中都有一个地址。 总结,CPU可以直接读写以下三个地方的数据: (1)CPU内部寄存器,在CPU内部 (2)内存单元,直接连在CPU上 (3)端口 端口地址和内存地址一样,都通过地址总线来传送。在PC系统中,最多可以定位64K个不同端口,他们的端口范围是:0~65535。 对端口的读写不能用mov、push、pop,应该用in和out in al,60h ;从60h端口读入一个接 执行过程: (1)CPU通过地址总线将信息60h发出 (2

一文带你精通CAS,由浅入深,直击灵魂

二次信任 提交于 2020-02-26 02:32:32
推荐阅读: 阿里二面凉经:虚拟机+MySQL+中间件+设计模式+缓存+Spring+并发等难题,全部迎刃而解 后端开发中大家肯定遇到过实现一个线程安全的计数器这种需求,根据经验你应该知道我们要在多线程中实现 共享变量 的原子性和可见性问题,于是锁成为一个不可避免的话题,今天我们讨论的是与之对应的无锁 CAS。本文会从怎么来的、是什么、怎么用、原理分析、遇到的问题等不同的角度带你真正搞懂 CAS。 为什么要无锁 我们一想到在多线程下保证安全的方式头一个要拎出来的肯定是锁,不管从硬件、操作系统层面都或多或少在使用锁。锁有什么缺点吗?当然有了,不然 JDK 里为什么出现那么多各式各样的锁,就是因为每一种锁都有其优劣势。 使用锁就需要获得锁、释放锁,CPU 需要通过上下文切换和调度管理来进行这个操作,对于一个 独占锁 而言一个线程在持有锁后没执行结束其他的哥们就必须在外面等着,等到前面的哥们执行完毕 CPU 大哥就会把锁拿出来其他的线程来抢了(非公平)。锁的这种概念基于一种悲观机制,它总是认为数据会被修改,所以你在操作一部分代码块之前先加一把锁,操作完毕后再释放,这样就安全了。其实在 JDK1.5 使用 synchronized 就可以做到。 但是像上面的操作在多线程下会让 CPU 不断的切换,非常消耗资源,我们知道可以使用具体的某一类锁来避免部分问题。那除了锁的方式还有其他的吗?当然

linux服务器中毒排查过程

我与影子孤独终老i 提交于 2020-02-26 02:03:32
真实案例: 公司一台线上redis服务器前段时间在空闲状态下cpu也一直处于100%的状态,在查看对应进程的CPU后,发现一个奇怪的问题,平均CPU使用率远远大于redis进程、其它两个进程的所占用的CPU总和,但是top命令查看不到对应的占用过高的进程,于是初步怀疑有两种可能:1.硬件问题 2.服务器受到***CPU病毒的*** 排查思路: 1.因为是最新购买的云服务器,基本排除硬件问题(腾讯云监控会有报警) 2.确定是病毒惹的祸: 2.1:查看定时任务,发现有来历不明的定时任务在跑,里面的内容都是乱码;然后把里面相关的内容删除,但是一段时间后CPU依然接近100%,说明这个东西肯定是跑一些程序***CPU的; 2.2:怀疑此病毒修改了内核,让top无法读取到对应的pid; 2.3根据自己平常使用的工具perf,不妨尝试查找一下,果然在使用perf top -s comm,pid,symbol命令后发现很多不明执行程序,然后根据PID,在/proc/PID号查找.exe执行文件路径,然后去到相对应的文件目录删除! 来源: 51CTO 作者: Eddylhq 链接: https://blog.51cto.com/12464725/2473109

Web 中间件 php-fpm 配置调优

偶尔善良 提交于 2020-02-25 23:59:46
Web 中间件 php-fpm 配置调优 一、php-fpm.conf 主要配置参数 pm = dynamic; 表示使用哪种进程数量管理方式 dynamic 表示 php-fpm 进程数是动态的,最开始是 pm.start_servers 指定的数量,如果请求较多,则会自动增加,保证空闲的进程数不小于pm.min_spare_servers,如 果进程数较多,也会进行相应清理,保证多余的进程数不多于 pm.max_spare_servers; static 表示 php-fpm 进程数是静态的,进程数自始至终都是 pm.max_children 指定的数量,不再增加或减少。 pm.max_children = 300; 静态方式下开启的php-fpm进程数量 pm.start_servers = 20; 动态方式下的起始php-fpm进程数量 pm.min_spare_servers = 5; 动态方式下的最小php-fpm进程数量 pm.max_spare_servers = 35; 动态方式下的最大php-fpm进程数量 注意:数值设置,参考自己的实际硬件配置,可以参考 总内存/30M 来计算。 如果 pm 设置为 static,那么其实只有 pm.max_children 这个参数生效。系统会开启设置数量的 php-fpm 进程。 如果 pm设置为 dynamic,那么

性能测试简谈

瘦欲@ 提交于 2020-02-25 23:35:38
我们先了解一下,为什么要做性能测试: 游戏行业:某游戏上线新功能,目标是全服游戏群体,结果上线后,先后出现了服务器崩溃,游戏功能图标加载缓慢等问题,导致玩家怨声载道,为此,游戏运营商不得不发放了许多奖励。具体损失不表,为赶进度而发布的功能,也因为生产事故导致延期更长的时间 这就是典型的没有进行性能测试,或者说性能测试不充分导致出现的生产事故。在游戏行业还比较好,毕竟损失的只是虚拟的货币和玩家的游戏热情,但是在传统行业呢? 通过这个案例,我们知道,在一些极限的场景下,软/件和硬件会造成极大的破坏和损失,因此,我们需要进行性能测试,来验证软件在高压力下,高并发下,高负载下的实际工作情况。 什么是性能测试 性能测试就是模拟一些极端场景,对软/硬件性能进行测试,判断其极限性能和在极限性能边界上的运行状态。 设计性能测试场景,主要有以下场景: – 基准测试:了解系统在静置时的资源消耗,如cpu,io,网络带宽,网络连接的情况。如果有干扰,务必排除。 – 单次连续请求测试:1次连续请求情况下的tps(Transaction Per Second 每秒事务请求数),响应时间,服务器资源消耗情况,主要用于参考。 – 负载测试:逐渐增加并发请求数,查看tps,响应时间,错误率,服务器资源消耗情况,主要用于分析最大性能。 – 压力测试:在最大性能的临界点上保持压力进行测试

如何控制多线程的执行顺序?

寵の児 提交于 2020-02-25 20:49:55
面试的时候你是否经常被问到这样的问题: 你一般通过什么方式去控制线程的执行顺序? 碰到这样的问题,我的内心其实是很抵触的! 开什么玩笑?我怎么会控制它呢?我为什么要控制它? 其实不用慌,这个问题并不难,且听我慢慢道来...... 那么,什么是线程和进程? 要想控制多线程的顺序,你首先应该搞清楚线程和进程到底是什么东西? 进程 进程其实是操作系统的基础,是系统中一次程序的执行,也是一次程序和数据在机器上顺序执行时所发生的活动,又是系统进行资源分配和调度的一个独立单位。 其实说的通俗一点,可以这么理解,进程就是Windows系统中执行的一个exe程序,是操作系统管理的基本运行单元,看下面这个图你就知道啥是进程了! 线程 线程是比进程还要小的一个单元,它是进程中独立运行的子任务。 你比如说一个微信.exe程序进程中就有非常多的子线程在同时运行,例如音视频线程、文件下载线程、信息传输线程等等,这些不同的任务如果都在一个线程去运行,那程序必定会特别慢,大家的体验不会像现在那样舒服,所以这里的每一个任务或功能都需要对应一个后台的线程在默默运行。 简单来说,线程就是组成进程的一条路径,一个进程可以包含一个或者多个线程。 什么是多线程环境? 关于多线程的环境,其实大家在使用Windows系统的时候就深有感触。 想象你一边在用IDE码代码,一边要和朋友聊天,还一边带着耳机听着音乐

TMS320F28051单片机解密型号

自闭症网瘾萝莉.ら 提交于 2020-02-25 19:17:17
TI 领先的 DSP 技术的处理能力和效率实现了 MCU 的控制外设集成和简便易用性,是诸如数字电机控制、数字电源和智能传感器等嵌入式应用的理想选择。致芯对于DSP系列芯片解密有明显优势。 TMS320F28051基本特性: 高效 32 位 CPU (TMS320C28x) 60MHz(16.67ns 周期时间) 16 × 16 和 32 × 32 乘法和累加 (MAC) 运算 16 × 16 双 MAC 哈佛 (Harvard) 总线架构 连动运算 快速中断响应和处理 统一存储器编程模型 高效代码(使用 C/C++ 和汇编语言) 部分芯片型号如下: TMS320LF2406A TMS320F28027 TMS320F2809 TMS320F28335 TMS320F2810 TMS320F28022 TMS320F2802 TMS320F2811 TMS320F28026 TMS320F2808 TMS320F28334 TMS320LF2407A TMS320F28021 TMS320F2806 TMS320F28332 TMS320LF2402A TMS320F2812 TMS320F28235 TMS320F2802 TMS320F2811 TMS320F28062 TMS320F28050 TMS320F28068 TMS320F28054 来源: 51CTO 作者: