一台只有一个 vCPU 的服务器,也可以拥有自己的秩序。
我更愿意把服务器想成一间很小的工作室:入口要清楚,工具要各归其位,暂时不用的东西不要占据桌面。节点服务负责网络入口,博客负责留下文字,两者之间用一个简单的反向代理隔开。
先让它简单
博客最终输出的是 HTML、CSS 和少量 JavaScript。文章用 Markdown 写,构建时生成页面,服务器只负责把文件送出去。没有后台进程,就少了一类需要观察的故障;没有数据库,也少了一份需要备份的状态。
这不是对复杂系统的否定,而是给当前规模选择合适的重量。等内容和访问量真的长大,再为它添一间房间。
留一点余量
在 2GB 内存的机器上,余量本身就是性能的一部分。容器要设上限,日志要有轮转,服务要绑定本机端口。这样即使文章突然被更多人看到,也不会轻易把节点服务挤到角落。
好的部署不是把所有东西都装上,而是让每一个正在运行的东西都能被解释。