<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Zram on JiangYM's Blog</title><link>https://jiangym.top/tags/zram/</link><description>Recent content from JiangYM's Blog</description><generator>Hugo</generator><language>zh-cn</language><managingEditor>xxx@example.com (JiangYM)</managingEditor><webMaster>xxx@example.com (JiangYM)</webMaster><copyright>本博客所有文章除特别声明外，均采用 BY-NC-SA 许可协议。转载请注明出处！</copyright><lastBuildDate>Thu, 17 Sep 2026 17:30:00 +0800</lastBuildDate><atom:link href="https://jiangym.top/tags/zram/index.xml" rel="self" type="application/rss+xml"/><item><title>给 1.9G VPS 上了 zram 压缩交换，真香的亲身体验</title><link>https://jiangym.top/post/zram-on-tiny-vps/</link><pubDate>Thu, 17 Sep 2026 17:30:00 +0800</pubDate><author>xxx@example.com (JiangYM)</author><guid>https://jiangym.top/post/zram-on-tiny-vps/</guid><description>
<![CDATA[<h1>给 1.9G VPS 上了 zram 压缩交换，真香的亲身体验</h1><p>作者：JiangYM（xxx@example.com）</p>
        
          <p>之前在《1核1.9G的小鸡上到底跑了多少服务》那篇的结尾我挖了个坑——说下一步要搞 zram 压缩交换。今天终于填上了，顺便把过程记录下来，给同样在破 VPS 上挣扎的朋友参考。</p>
<h2 id="zram-到底是什么">
<a class="header-anchor" href="#zram-%e5%88%b0%e5%ba%95%e6%98%af%e4%bb%80%e4%b9%88"></a>
zram 到底是什么
</h2><p>简单说，zram 就是把一块内存虚拟成压缩过的块设备，然后拿来做 swap。听起来有点绕，但实际上就是：</p>
<ul>
<li>传统 swap：内存不够了 → 把数据写到硬盘上 → 慢了但能保命</li>
<li>zram swap：内存不够了 → 把数据压缩后留在内存里 → 省了 IO 但挤占实际内存</li>
</ul>
<p>关键区别在哪？硬盘 swap 慢是因为 IO 速度瓶颈（我那 20G 的 Contabo 虚拟盘，随机读写大概就几十 MB/s），而 zram 压缩/解压全靠 CPU。现代 CPU（我那台 E5-2660 v2 算老的了）压 LZO 或者 zstd 也就几微秒的事。用 CPU 时间换 IO 时间，在小内存机器上很划算。</p>
<h2 id="怎么装的">
<a class="header-anchor" href="#%e6%80%8e%e4%b9%88%e8%a3%85%e7%9a%84"></a>
怎么装的
</h2><p>Ubuntu 24.04 默认没装 zram-tools，需要手动来：</p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">apt update <span class="o">&amp;&amp;</span> apt install -y zram-tools
</span></span></code></pre></td></tr></table>
</div>
</div><p>装完配置就在 <code>/etc/default/zramswap</code>。默认配置保守得一匹，只给总内存的 25%，我改了一下：</p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span><span class="lnt">2
</span><span class="lnt">3
</span><span class="lnt">4
</span><span class="lnt">5
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl"><span class="c1"># 改成总内存的 50%，用 zstd 压缩</span>
</span></span><span class="line"><span class="cl"><span class="nv">ALGO</span><span class="o">=</span>zstd
</span></span><span class="line"><span class="cl"><span class="nv">PERCENT</span><span class="o">=</span><span class="m">50</span>
</span></span><span class="line"><span class="cl"><span class="nv">PERCENT_FALLBACK</span><span class="o">=</span><span class="m">30</span>
</span></span><span class="line"><span class="cl"><span class="nv">PRIORITY</span><span class="o">=</span><span class="m">100</span>
</span></span></code></pre></td></tr></table>
</div>
</div><p>这里我不推荐用 lz4（虽然更快但压缩率低），也不推荐用 zstd 的极端压缩级别。默认的 zstd 快又好，对小内存机器刚刚好。</p>
        
        <hr><p>本文2026-09-17首发于<a href='https://jiangym.top/'>JiangYM's Blog</a>，最后修改于2026-09-17</p>]]></description><category>技术</category></item></channel></rss>