惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

D
DataBreaches.Net
IT之家
IT之家
博客园_首页
博客园 - 【当耐特】
V
V2EX
Apple Machine Learning Research
Apple Machine Learning Research
G
Google Developers Blog
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
Recent Announcements
Recent Announcements
F
Fortinet All Blogs
GbyAI
GbyAI
腾讯CDC
H
Hackread – Cybersecurity News, Data Breaches, AI and More
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
I
InfoQ
H
Help Net Security
T
Tailwind CSS Blog
B
Blog RSS Feed
Martin Fowler
Martin Fowler
人人都是产品经理
人人都是产品经理
The Cloudflare Blog
博客园 - 叶小钗
雷峰网
雷峰网
量子位

博客园 - bitwoods

Linux驱动开发:内核模块堆叠(1) Linux驱动开发:内核模块与普通应用的区别 Linux驱动开发:从一个最简单的模块开始 c++ prepareStatement使用like查询语句的方式 glog编译报错解决 linux c++程序使用MD5 串口AT与数据的混杂接收处理 蓝牙Mesh简介(一)设备标识:UUID和Mesh地址 MT7621 openWrt插件操作GPIO(mmap) adblock plus 您的地区不可用 OpenWRT 修改固件默认显示中文 OpenWRT:插件自启动 OpenWRT编译时修改时区与主机名 SC200L Android10启动和关机修改 ILI9881D驱动 ubuntu20.04 微信和迅雷安装包 开启power management功能有坑,ESP32串口频繁出现UART_BREAK中断 MAC地址与字符串的相互转化 ESP32音频开发板ESP32-Korvo V1.1踩坑
阿里云Ubuntu服务器优化
bitwoods · 2023-11-10 · via 博客园 - bitwoods

阿里云Ubuntu服务器优化

有台自用的阿里云测试服务器,最便宜的那种2核2G ¥99/年,装的ubuntu22.04.之前用着感觉还行,最近几天使用vscode ssh修改调试,
搞了一段时间就不行,cpu和内存飙升至96%以上...之后就是各种反应迟钝,无法编译....

太便宜了,提交工单都不好意思

装个htop看了下,vscode server占用了大量内存而导致,而且居然没有使用swap???

一查才发现阿里云的系统默认是不分配swap的,按照说明文档增加swap

1 创建一个空文件,锁定文件的大小

sudo mkdir -v /var/cache/swap 
cd /var/cache/swap 
sudo dd if=/dev/zero of=swapfile bs=1K count=4M

2 将新建的文件转换为swap文件

sudo mkswap swapfile

3 给文件授权

sudo chmod 600 swapfile

4 启用swap分区

sudo swapon swapfile

5 验证swap分区

swapon -s
top -bn1 | grep -i swap

//show
Filename				Type		Size		Used		Priority
/var/cache/swap/swapfile                file		4194300		79248		-2
MiB Swap:   4096.0 total,   4018.6 free,     77.4 used.    802.1 avail Mem 
     92 root      20   0       0      0      0 S   0.0   0.0   0:00.48 kswapd0
    121 root       0 -20       0      0      0 I   0.0   0.0   0:00.00 zswap-shrink

6 将分区设置成开机自启

echo "/var/cache/swap/swapfile none swap sw 0 0" | sudo tee -a /etc/fstab

7 修改swap使用率

sudo vi /etc/sysctl.conf

将默认的vm.swappiness=0 改为vm.swappiness=50,保存退出
说明: swap使用率,取值为0~100。为0表示最大限度使用物理内存,然后才使用swap分区;swappiness等于100的时候表示积极的使用swap分区,并且把内存上的数据及时的搬运到swap分区中

卸载默认的snap

参考链接:https://www.cnblogs.com/learner-and-helper-YZY/p/17654961.html