服务器内存

监控服务器内存及CPU使用情况

﹥>﹥吖頭↗ 提交于 2020-02-05 19:01:29
监控内存及CPU使用情况 import psutil def get_memory_cpu_info ( ) : info = psutil . virtual_memory ( ) memory_cpu_info = { 'memory_total' : info . total , 'memory_available' : info . available , 'memory_used' : info . used , 'memory_free' : info . free , 'memory_percent' : info . percent , 'cup_used_percent' : psutil . cpu_percent ( ) } return memory_cpu_info if __name__ == '__main__' : res = get_memory_cpu_info ( ) print ( res ) Json文件写出 import json def write_to_file ( content , filename ) : with open ( filename , 'a' , encoding = 'utf-8' ) as f : f . write ( json . dumps ( content , ensure_ascii =

记录一次服务器内存高占的解决过程

杀马特。学长 韩版系。学妹 提交于 2020-01-08 21:08:04
问题在数据库 一、事件背景 在生产环境部署完毕之后,运行了差不多1个多月,发现服务器内存、CPU和磁盘的占用越来越高。 一开始我以为是代码内存问题,优化过代码之后发现过了一段时间系统负载又涨上来了。 二、解决问题 后来仔细思考,发现磁盘占用高,想想看,除了数据库也没有什么代码会频繁读写磁盘了吧。于是,仔细分析了数据库的SQL语句和相关设置,最终发现是忘了加索引导致的。 最后,加了 索引 之后,系统负载立刻下降了很多。 所以说, 数据库优化真的对系统性能有很大提升 来源: CSDN 作者: Kyo. 链接: https://blog.csdn.net/weixin_43724369/article/details/103887268

Linux 服务器内存处理相关

久未见 提交于 2019-12-25 03:07:18
文章目录 Linux 服务器内存处理相关 1、free 命令 2、查看进程的内存占用情况 3、查看内存占用最高的前20 4、动态查看内存的使用情况 Linux 服务器内存处理相关 1、free 命令 以kb形式查看内存使用情况 free total used free shared buff/cache available Mem: 7733220 7109448 243856 2340 379916 329752 Swap: 0 0 0 以mb 形式查看内存使用情况 free -m total used free shared buff/cache available Mem: 7551 6942 237 2 371 321 Swap: 0 0 0 total:总计物理内存的大小。 used:已使用多大。 free:可用有多少。 Shared:多个进程共享的内存总额。 Buffers/cached:磁盘缓存的大小。 所以空闲内存=free+buffers+cached=total-used 2、查看进程的内存占用情况 pidstat -r -p 14857 1 5 Linux 3.10.0-957.21.3.el7.x86_64 (iZbp1ey0i1b0ctp4258qn9Z) 12/20/2019 _x86_64_ (4 CPU) 11:58:49 AM UID PID

uwsgi异常服务器内存cpu爆满

六眼飞鱼酱① 提交于 2019-12-06 07:50:42
记录线上服务器通过linux性能检测工具glances检测到 cpu、内存爆满,且是uwsgi进程占用,对于服务器内核,以及uwsgi配置优化 参考文章 https://blog.csdn.net/orangleliu/article/details/48531759 uwsgi.log日志报错 Tue Jun 2 17:33:27 2015 - *** uWSGI listen queue of socket "127.0.0.1:9080" (fd: 3) full !!! (101/100) *** Tue Jun 2 17:33:28 2015 - *** uWSGI listen queue of socket "127.0.0.1:9080" (fd: 3) full !!! (101/100) *** 解决思路: 1.修改内核配置 2.修改uwsgi配置 内核修改 #对于一个经常处理新连接的高负载 web服务环境来说,默认的 128 太小了 net.core.somaxconn = 262144 ​#表示SYN队列的长度,默认为1024,加大队列长度为8192,可以容纳更多等待连接的网络连接数 net.ipv4.tcp_max_syn_backlog = 8192 #网卡设备将请求放入队列的长度 net.core.netdev_max_backlog = 65536

线上服务器内存分析及问题排查

匿名 (未验证) 提交于 2019-12-02 23:32:01
服务器性能指标(二)-- 线上服务器内存分析及问题排查 转载: http://zhuanlan.51cto.com/art/201808/581048.htm 平常的工作中,在衡量服务器的性能时,经常会涉及到几个指标,load、cpu、mem、qps、rt等。每个指标都有其独特的意义,很多时候在线上出现问题时,往往会伴随着某些指标的异常。大部分情况下,在问题发生之前,某些指标就会提前有异常显示。 Linux的负载高,主要是由于CPU使用、内存使用、IO消耗三部分构成。任意一项使用过多,都将导致服务器负载的急剧攀升。本文是该系列的第三篇,来分析一下影响机器负载的几个原因中的第二项,内存使用。 什么是内存 内存是计算机中重要的部件之一,它是与CPU进行沟通的桥梁。计算机中所有程序的运行都是在内存中进行的,因此内存的性能对计算机的影响非常大。 内存(Memory)也被称为内存储器,其作用是用于暂时存放CPU中的运算数据,以及与硬盘等外部存储器交换的数据。 物理内存 物理内存指通过物理内存条而获得的内存空间。即随机存取存储器(random access memory,RAM),是与CPU直接交换数据的内部存储器,也叫主存(内存)。 虚拟内存 虚拟内存是计算机系统内存管理的一种技术。它使得应用程序认为它拥有连续可用的内存(一个连续完整的地址空间),而实际上,它通常是被分隔成多个物理内存碎片

SQL Server占用服务器内存过高

前提是你 提交于 2019-11-28 17:39:38
本文链接:https://blog.csdn.net/shenwenbin0106/article/details/74987577 SQL Server对服务器内存的使用策略是用多少内存就占用多少内存,只用在服务器内存不足时,才会释放一点占用的内存,所以SQL Server 服务器内存往往会占用很高。 查看内存状态: DBCC MemoryStatus 这些内存一般都是Sql Server运行时候用作缓存的: 1. 数据缓存:执行个查询语句,Sql Server会将相关的数据页(Sql Server操作的数据都是以页为单位的)加载到内存中来, 下一次如果再次请求此页的数据的时候,就无需读取磁盘了,大大提高了速度。 2.执行命令缓存:在执行存储过程,自定函数时,Sql Server需要先二进制编译再运行,编译后的结果也会缓存起来, 再次调用时就无需再次编译。 可以调用以下几个DBCC管理命令来清理这些缓存: DBCC FREEPROCCACHE 清除存储过程相关的缓存 DBCC FREESESSIONCACHE 会话缓存 DBCC FREESYSTEMCACHE('All') 系统缓存 DBCC DROPCLEANBUFFERS 所有缓存 但是,这几个命令虽然会清除掉现有缓存,为新的缓存腾地方,但是Sql server并不会因此释放掉已经占用的内存。Sql

查看服务器内存、CPU、网络等占用情况的命令--汇总

两盒软妹~` 提交于 2019-11-27 23:42:05
>查看端口是否被启动--netstat 命令:netstat -an | grep 4445结果:如果有tcp一行则代表端口是开放的,如果没有说明没有访问权限,端口未开放一般的,在服务器上端口是需要配置的,具体操作参考文章;https://blog.csdn.net/halfsking/article/details/84896991 >su的用法 su:切换到root用户,但是不改变工作目录,如图 secureCRT执行 : su -:切换到root账户,但要改变之前的工作目录到root的根目录了 如图secureCRT执行: sudo :切换到root的另一种方式,当提供的密钥是pem或pub等格式时 登录之后使用sudo su可直接切换到root 如:在xshell中执行直接切换ec2-user到root下 >SCP的用法 注意:在本地服务器机器操作 1、 文件拷贝: 从一台服务器拷贝文件到本地服务器 scp root@192.168.120.204:/opt/soft/nginx-0.5.38.tar.gz /opt/soft/ 解析:从192.168.120.204机器上的/opt/soft/的目录中下载nginx-0.5.38.tar.gz 文件到本地/opt/soft/目录中 2、 目录拷贝: 从一台服务器拷贝目录到本地服务器 scp -r root@192.168

实体类实现序列化

試著忘記壹切 提交于 2019-11-27 21:54:34
客户端访问了某个能开启会话功能的资源, web服务器就会创建一个与该客户端对应的HttpSession对象,每个HttpSession对象都要站用一定的内存空间。如果在某一时间段内访问站点的用户很多,web服务器内存中就会积累大量的HttpSession对象,消耗大量的服务器内存,即使用户已经离开或者关闭了浏览器,web服务器仍要保留与之对应的HttpSession对象,在他们超时之前,一直占用web服务器内存资源。 web服务器通常将那些暂时不活动但未超时的HttpSession对象转移到文件系统或数据库中保存,服务器要使用他们时再将他们从文件系统或数据库中装载入内存,这种技术称为Session的持久化。 将HttpSession对象保存到文件系统或数据库中,需要采用序列化的方式将HttpSession对象中的每个属性对象保存到文件系统或数据库中;将HttpSession对象从文件系统或数据库中装载进内存时,需要采用反序列化的方式,恢复HttpSession对象中的每个属性对象。所以存储在HttpSession对象中的每个属性对象必须实现Serializable接口 ———————————————— 转载:CSDN博主「wan23333」 https://blog.csdn.net/wan23333/article/details/83057488 来源: https://www

linux-查看服务器内存使用情况(free top)

岁酱吖の 提交于 2019-11-26 20:39:25
free命令:显示系统使用和空闲的内存情况,包括物理内存、交互区内存(swap)和内核缓冲区内存。 [root@ipha-dev71-1 workspace]# free # kb total used free shared buff/cache available Mem: 16251672 13033660 254336 45824 2963676 2630624 Swap: 16777212 31512 16745700 [root@ipha-dev71-1 workspace]# free -m # MB total used free shared buff/cache available Mem: 15870 12728 248 44 2894 2569 Swap: 16383 30 16353 [root@ipha-dev71-1 workspace]# free -h # -h会自动选择以适合理解的容量单位显示 total used free shared buff/cache available Mem: 15G 12G 248M 44M 2.8G 2.5G Swap: 15G 30M 15G Mem:表示物理内存统计,如果机器剩余内存非常小,一般小于总内存的20%,则判断为系统物理内存不够 Swap: 表示硬盘上交换分区的使用情况,如剩余空间较小