其实是Linux通过一个参数swappiness来控制的。当然还涉及到复杂的算法。
问:我是一个Ubuntu 14.04 LTS版本的新手。我需要一块额外的swap文件来提高我Ubuntu服务器的性能。我怎样才能通过SSH连接用相关命令为我的Ubuntu 14.04 LTS 增加一块swap分区。
邓延军 (deng.yanjun@163.com), 硕士研究生, 西安电子科技大学软件工程研究所
image.png CPU使用情况 通常使用top命令查看CPU的当前状态,如果是多核CPU,也可以看到每核的信息 # top 执行后按数字1,可以显示多个CPU状态 例如: Cpu0 : 1.0
当今无论什么操作系统交换Swap空间是非常常见的。Linux 使用交换空间来增加主机可用的虚拟内存。它可以在常规文件或逻辑卷上使用一个或多个专用交换分区或交换文件。
有且只能有一个 PVID值,为不带tag的数据帧进入交换机时后打tag用的(交换机内部都是带tag的帧,交换机按照tag进行数据帧的正切转发)
在我的文章《使用开源工具识别 Linux 性能瓶颈》中,我解释了一些使用开源的图形用户界面(GUI)工具监测 Linux 性能的简单方法。我的重点是识别 性能瓶颈,即硬件资源达到极限并阻碍你的 PC 性能的情况。
前几天闲来无事翻微薄,有人写道:“曾经偷情被游街,如今二奶喊干爹;曾经撞人忙救人,如今撞人再杀人;曾经私情偷着干,如今淫乱存U盘;曾经献血为扶伤,如今慈善越重洋;曾经相好牵肚肠,如今小三炫富忙;曾经摩托都挺酷,如今地铁都追尾;曾经县长做皮卡,如今少年开宝马;曾经精英成右派,如今牛逼全二代。”不禁感慨万千,这世道真是变了。
什么是Linux swap space呢?我们先来看看下面两段关于Linux swap space的英文介绍资料:
1、登录Terminal,执行:cat /proc/cpuinfo,就会显示出主机的CPU详细参数,如内核、频率、型号等等,以下是我Linux 系统主机的CPU:
整理出了三个有关性能监控和优化命令详细讲解,文章很长,涉及top命令、free命令和vmstat命令,真的是很详细的讲解,希望能帮到大家
上一章我们讲解了标准分区的使用过程,可以看到,标准分区的配置比较简单,但是标准分区也有很显著的缺点,如:分区创建后不可扩容、分区的空间必须连续,不允许跨越多块空间或磁盘。但是这些缺点,却是我们在生产环境中比较常见的需求,如:存放某个软件相关数据的分区,经常会被软件的数据所占满,需要空间扩容,而且一块磁盘存满了,还需要再加一块新的磁盘。为了满足这种需求,Linux中就需要使用LVM技术来实现。
在 Linux 下 free 命令可以看出系统当前内存状况,附上 -k , -m , -g 可以分别输出对应单位的内存状况:
无论是 windows 系统还是 linux 操作系统,在硬盘上都有一块虚拟内存的空间。 无论你使用的是哪个系统,都存在一个问题,那就是到底虚拟内存的空间需要多大呢?虚拟内存又是什么呢? 本文就来详细介绍一下。
看一段线上的gc日志,这是一段CMS完整步骤的日志,对于GC日志格式,不了解的可以再温习一下《GC及JVM参数》
Linux系统是虚拟内存系统,虚拟内存并不是真正的物理内存,而是虚拟的连续内存地址空间。虚拟内存又分为内核空间和用户空间,内核空间是内核程序运行的地方,用户空间是用户进程代码运行的地方,只有内核才能直接访问物理内存并为用户空间映射物理内存(MMU)。内核会为每个进程分配独立的连续的虚拟内存空间,并且在需要的时候映射物理内存,为了完成内存映射,内核为每个进程都维护了一张页表,记录虚拟地址与物理地址的映射关系,这个页表就是存在于MMU中;用户进程访问内存的时候,通过页表把虚拟内存地址转换为物理内存地址进而访问数据;其实对于用户进程而言,虚拟内存就是内存一般的存在(当作内存看待就好)。这样的设计可以把用户程序和系统程序分开,互不影响;内核可以对所有的用户程序进行管理,比如限制内存滥用等
linux内存管理卷帙浩繁,本文只能层层递进地带你领略冰山轮廓,通过本文你将了解到以下内容:
随着云计算产业的异军突起,网络技术的不断创新,越来越多的网络设备基础架构逐步向基于通用处理器平台的架构方向融合,从传统的物理网络到虚拟网络,从扁平化的网络结构到基于 SDN 分层的网络结构,无不体现出这种创新与融合。
1. LVS 简介 ---- 1. LVS 是什么? LVS 的英文全称是 Linux Virtual Server,即 Linux 虚拟服务器。它是我们国家的章文嵩博士的一个开源项目。在 linux 内核 2.6 中,它已经成为内核的一部分,在此之前的内核版本则需要重新编译内核。 2. LVS 能干什么? LVS 主要用于多服务器的负载均衡。它工作在网络 4 层,可以实现高性能,高可用的服务器集群技术。 它廉价,可把许多低性能的服务器组合在一起形成一个超级服务器。 它易用,配置非常简单,且有多种负载均衡的
使用df或者ls命令查看Linux系统的磁盘设备,下图的sdb1就是我接入Ubuntu的一个SD卡,sda是系统硬盘(虚拟机的虚拟磁盘)。
vmstat是Virtual Meomory Statistics(虚拟内存统计)的缩写,可对操作系统的虚拟内存、进程、CPU活动进行监控。是对系统的整体情况进行统计,不足之处是无法对某个进程进行深入分析。
现代系统都是多任务系统,而我们的进程是在内存中运行的,内存是有限的,我们如何保证可以安全而又高效的在有限的内存中运行多个程序呢?于是系统给每个进程抽象出一个地址空间。
在Linux系统中,交换分区(Swap Space)是一个特殊的文件系统分区,它用于当物理内存(RAM)不足时,将一部分内存中的数据暂时转移到硬盘中,以便释放内存空间供系统继续使用。交换分区在Linux中起到了“虚拟内存”的作用,对于保障系统稳定运行至关重要。
在选择压缩算法的时候,首先要考虑的就是压缩比和压缩速率。压缩比主要是为了节省网络带宽和磁盘存储空间,而压缩速率主要影响吞吐量。
「 原谅和忘记就意味着扔掉了我们获得的最贵经验 -------《人生的智慧》叔本华」
最近正在学习Linux系统的常用操作命令,于是心血来潮,想自己安装一个Linux系统实践一下,在网上找了半天资料,终于在自己的电脑上成功安装了,实现了Windows+Linux双系统,将自己的安装过程记录了下来。这里安装的是Ubuntu-1604.3操作系统,下载地址
这是《2015年博客升级记》系列文章的第二篇,主要记录在Linux系统中如何将磁盘进行分区和挂载。
在 Linux 系统中,目录、字符设备、块设备、套接字、打印机等都被抽象成了文件,也就是大家常说的“一切皆文件”。
很多认为swap是物理RAM内存已满时才使用swap。 这是一个错误的认知,因为内核会将非活动页面将从内存移动到交换空间swap。
为了快速构建项目,使用高性能框架是我的职责,但若不去深究底层的细节会让我失去对技术的热爱。 探究的过程是痛苦并激动的,痛苦在于完全理解甚至要十天半月甚至没有机会去应用,激动在于技术的相同性,新的框架不再是我焦虑。 每一个底层细节的攻克,就越发觉得自己对计算机一无所知,这可能就是对知识的敬畏。
mkfs命令用于在设备上(通常是硬盘)创建Linux文件系统。mkfs本身并不执行建立文件系统的工作,而是调用相关的程序来执行。
对于Linux软件开发人员肯定已经非常熟悉Linux系统的目录结构。文件系统可以根据它们的结构而变化,但在大多数情况下,它们应该符合文件系统层次标准。执行ls -l /命令查看根目录下列出的目录,你的目录可能与我的目录有些许的不同,但目录应该大致如下所示:
使用w查看系统负载 w/uptime的命令结果是一样的 1. 第一行从左面开始显示的信息依次为:时间,系统运行时间,登录用户数,平均负载。 2. 最应该关注的应该是第一行中的 loa
%us:表示用户空间程序的cpu使用率(没有通过nice调度) %sy:表示系统空间的cpu使用率,主要是内核程序。 %ni:表示用户空间且通过nice调度过的程序的cpu使用率。 %id:空闲cpu %wa:cpu运行时在等待io的时间 %hi:cpu处理硬中断的数量 %si:cpu处理软中断的数量 %st:被虚拟机偷走的cpu 注:99.0 id,表示空闲CPU,即CPU未使用率,100%-99.0%=1%,即系统的cpu使用率为1%。
究其原因,监控系统计算的可用内存算法有偏差,他只关注了计算机的“实际”内存,忽略了计算机的虚拟内存。
Linux系统的Swap分区,即交换分区,通常也称为虚拟内存,Swap空间的作用可简单描述为:当系统的物理内存不够用的时候,就需要将物理内存中的一部分空间释放出来,以供当前运行的程序使用。那些被释放的空间可能来自一些很长时间没有什么操作的程序,这些被释放的空间被临时保存到Swap空间中,等到那些程序要运行时,再从Swap中恢复保存的数据到内存中。这样,系统总是在物理内存不够时,才进行Swap交换。其实,Swap的调整对Linux服务器,特别是Web服务器的性能至关重要。通过调整Swap,有时可以越过系统性能瓶颈,节省系统升级费用。
近一年内对公司的 ELK 日志系统做过性能优化,也对 SkyWalking 使用的 ES 存储进行过性能优化,在此做一些总结。本篇主要是讲 ES 在 ELK 架构中作为日志存储时的性能优化方案。
我告诉有朋友我一直用linux.他问我了一下我为什么linux使用的内存这么高.他讲他1G的内在free才232M.讲win xp才用200M的样子.
没错,这套 40 年前由 “C 语言之父” 开发的操作系统,如今仍然在深刻影响着 Linux、Windows。
系统现在共有447个进程,其中处于运行中的有1个,445个在休眠(sleep),stoped状态的有0个,zombie状态(僵尸)的有1个。
swap空间有两种形式:一是交换分区,二是交换文件。总之对它的读写都是磁盘操作。 linux内存通过 virtual memory 虚拟内存来管理整个内存, 虚拟内存管理着物理内存,也管理着swap交换空间。 Swap分区,即交换区,Swap空间的作用可简单描述为:当系统的物理内存不够用的时候,就需要将物理内存中的一部分空间释放出来,以供当前运行的程序使用。那些被释放的空间可能来自一些很长时间没有什么操作的程序,这些被释放的空间被临时保存到Swap空间中,等到那些程序要运行时,再从Swap中恢复保存的数据到
十二 lsof命令简介 lsof(list open files) 是一个列出当前系统打开文件的工具。在linux环境下,任何事物都以文件的形式存在,通过文件不仅仅可以访问常规数据,还可以访问网络连接和硬件。所以 如传输控制协议 (TCP) 和用户数据报协议 (UDP) 套接字等,系统在后台都为该应用程序分配了一个文件描述符,无论这个文件的本质如何,该文件 描述符为应用程序与基础操作系统之间的交互提供了通用接口。因为应用程序打开文件的描述符列表提供了大量关于这个应用程序本身的信息,因此通过lsof工 具能够查看这个列表对系统监测以及排错将是很有帮助的。 1.命令格式: lsof [参数][文件] 2.命令功能: 用于查看你进程开打的文件,打开文件的进程,进程打开的端口(TCP、UDP)。找回/恢复删除的文件。是十分方便的系统监视工具,因为 lsof 需要访问核心内存和各种文件,所以需要root用户执行。 lsof打开的文件可以是: 1.普通文件 2.目录 3.网络文件系统的文件 4.字符或设备文件 5.(函数)共享库 6.管道,命名管道 7.符号链接 8.网络文件(例如:NFS file、网络socket,unix域名socket) 9.还有其它类型的文件,等等 3.命令参数: -a 列出打开文件存在的进程 -c<进程名> 列出指定进程所打开的文件 -g 列出GID号进程详情 -d<文件号> 列出占用该文件号的进程 +d<目录> 列出目录下被打开的文件 +D<目录> 递归列出目录下被打开的文件 -n<目录> 列出使用NFS的文件 -i<条件> 列出符合条件的进程。(4、6、协议、:端口、 @ip ) -p<进程号> 列出指定进程号所打开的文件 -u 列出UID号进程详情 -h 显示帮助信息 -v 显示版本信息 4.使用实例: 实例1:无任何参数 命令: lsof 输出: [root@localhost ~]# lsof COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME init 1 root cwd DIR 8,2 4096 2 / init 1 root rtd DIR 8,2 4096 2 / init 1 root txt REG 8,2 43496 6121706 /sbin/init init 1 root mem REG 8,2 143600 7823908 /lib64/ld-2.5.so init 1 root mem REG 8,2 1722304 7823915 /lib64/libc-2.5.so init 1 root mem REG 8,2 23360 7823919 /lib64/libdl-2.5.so init 1 root mem REG 8,2 95464 7824116 /lib64/libselinux.so.1 init 1 root mem REG 8,2 247496 7823947 /lib64/libsepol.so.1 init 1 root 10u FIFO 0,17 1233 /dev/initctl migration 2 root cwd DIR 8,2 4096 2 / migration 2 root rtd DIR 8,2 4096 2 / migration 2 root txt unknown /proc/2/exe ksoftirqd 3 root cwd DIR 8,2 4096 2 / ksoftirqd
如下显示free是显示的当前内存的使用,-m的意思是M字节来显示内容.我们来一起看看. $ free -m total used free shared buffers cached Mem: 1002 769 232 0 62 421 -/+ buffers/cache: 286 715 Swap:
top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器。
当我们物理内存小的时候,会出现OOM,然后服务自动死掉的情况。因为物理内存大小是固定的,有没有其他好的办法来解决呢?这里我们可以适当调整Linux的虚拟内存来协作。
工具:htop, net-tools, ping, iperf, UnixBench 等
今天,我们进入本系列最后一篇,来看看在一般的随机变量的概率描述中,分数是怎么建模,如何起作用的。
实际上,很多时候我们只需要分两个区:`/`和交换分区,日常使用基本不会有任何影响,甚至于交换分区对于现在的电脑来说都不是必要的,我们完全可以只分配一个根分区。linux只需要一个/根分区就可以正常运行。
本文最先发布在:https://www.itcoder.tech/posts/how-to-add-swap-space-on-ubuntu-20-04/
领取专属 10元无门槛券
手把手带您无忧上云