我在云中有几个低内存虚拟机,以运行一些基本的测试实验室。我总是收到有关性能的通知,特别是在内存方面,因为它们只有587M内存。

低内存云VM上的性能问题

更改SWAP文件大小

的Linux提供了两种类型的交换空间。默认情况下,大多数Linux安装都会创建交换分区,但是也可以使用经过特殊配置的文件作为交换文件。交换分区的名称就是它的含义-一个标准磁盘分区,由mkswap命令指定为交换空间。  如果您没有足够的内存,那么在任何内存需求高峰时,交换将非常频繁地使用,而且使用频率会明显增加。如果您没有足够的内存并且没有交换空间,这通常会导致无法为需要更多内存页面的请求分配内存。作为最后的手段,内核将部署OOM杀手来破坏高级内存进程(通常是MySQL,java等),这在我的上一篇文章中已显示– 的Linux虚拟机PHP调用了OOM-killer(内存不足)问题.

推荐的SWAP空间如下:

系统内存量推荐交换空间建议与休眠交换
小于2 GBRAM量的2倍RAM量的3倍
2 GB – 8 GB等于RAM量RAM量的2倍
8 GB – 64 GBRAM量的0.5倍RAM量的1.5倍
超过64 GB取决于工作量不建议休眠

就我而言,我的VM仅具有587M内存,交换文件大小为0K。

根据建议,我为此添加了一个1GB的交换文件。

[[电子邮件 protected] 〜]# sudo fallocate -l 1G /swapfile

[[电子邮件 protected] 〜]

#sudo dd if = / dev / zero of = / swapfile bs = 1024 count = 1048576 1048576+0 records in 1048576 + 0条记录 已复制1073741824字节(1.1 GB),27.5052 s,39.0 MB / s

[[电子邮件 protected] 〜]

#sudo chmod 600 /交换文件

[[电子邮件 protected] 〜]

#sudo mkswap / swapfile 设置交换空间版本1,大小= 1048572 KiB 没有标签,UUID = d126e13f-162d-4a1d-998c-f8e4152e4f8b

[[电子邮件 protected] 〜]

#sudo swapon / swapfile

[ro[电子邮件 protected] 〜]

#vi / etc / fstab

[[电子邮件 protected] 〜]

#mount -a

在/ etc / fstab文件中添加新行:

/ swapfile swap swap默认值0 0

使用命令验证:

  • 最佳
  • 停止
  • 免费-h

性能测试

用我发布的方法: 适用于AWS,Azure,Google 云和Oracle 云的VPS Bench比较(免费套餐& Regular Tier)

与交换增加更改之前和之后的区别不大。当有一些繁重的应用程序使用内存时,可能会有所不同。

SWAP增加之前SWAP增加后
nench.sh v2019.07.20 — //git.io/nench.sh benchmark timestamp:    2020-03-18 21:17:43 UTC————————————————-
处理器:   Intel®Xeon(R)CPU @ 2.30GHzCPU内核:    1Frequency:    2300.000 MHzRAM:          587MSwap:         -Kernel:      Linux 3.10.0-1062.12.1.el7.x86_64 x86_64
磁盘:sda     10G  HDD
CPU:散列SHA256的500 MB   1.719秒CPU:bzip2-压缩500 MB   CPU:AES加密500 MB    1.052 seconds
ioping:搜寻率   min / avg / max / mdev = 452.8 us / 5.33 ms / 51.9 ms / 8.48 msioping:顺序读取速度   在5.00 s,614 MiB,490 iops,122.7 MiB / s中生成了2.46 k请求
dd:顺序写入速度    1st run:    35.86 MiB/s    2nd run:    36.05 MiB/s    3rd run:    36.05 MiB/s    average:    35.99 MiB/s
IPv4速度测试    your IPv4:    35.226.94.xxxx
    Cachefly CDN:         110.45 MiB/s    Leaseweb (NL):        17.40 MiB/s    Softlayer DAL (US):   60.76 MiB/s    Online.net (FR):      17.77 MiB/s    OVH BHS (CA):         44.79 MiB/s
未检测到IPv6连接-————————————
nench.sh v2019.07.20 — //git.io/nench.sh benchmark timestamp:    2020-03-18 21:36:09 UTC————————————————-
处理器:   Intel®Xeon(R)CPU @ 2.30GHzCPU内核:    1Frequency:    2300.000 MHzRAM:          587MSwap:         1.0GKernel:      Linux 3.10.0-1062.12.1.el7.x86_64 x86_64
磁盘:sda     10G  HDD
CPU:散列SHA256的500 MB   1.731秒CPU:bzip2-压缩500 MB   CPU:AES加密500 MB    1.059 seconds
ioping:搜寻率   min / avg / max / mdev = 338.6 us / 4.13 ms / 68.9 ms / 6.66 msioping:顺序读取速度   在5.00 s,615.5 MiB,492 iops,123.1 MiB / s的速度下产生了2.46 k请求
dd:顺序写入速度    1st run:    35.86 MiB/s    2nd run:    36.05 MiB/s    3rd run:    36.05 MiB/s    average:    35.99 MiB/s
IPv4速度测试    your IPv4:    35.226.94.xxxx
    Cachefly CDN:         101.90 MiB/s    Leaseweb (NL):        17.43 MiB/s    Softlayer DAL (US):   60.28 MiB/s    Online.net (FR):      17.80 MiB/s    OVH BHS (CA):         32.00 MiB/s
未检测到IPv6连接-————————————

参考文献

通过 约翰扬

发表评论