单机撑不住了怎么办
前面我们把网站、接口、数据库先后搬上了雨云云服务器,单台机器跑得挺好。但流量一大,单台 CPU 打满、内存吃紧,网站就开始卡甚至宕机。最朴素的解决办法不是换顶配,而是“加机器”——用多台配置普通的雨云云服务器一起接流量,前面放一层 Nginx 做负载均衡。这样既能水平扩容,又能在某台机器挂掉时自动切走,业务不中断。
一、架构与准备
典型结构:1 台 Nginx 做入口(负载均衡器)+ 2 台及以上后端应用服务器(跑同样的网站或接口)。所有机器买雨云 KVM 云服务器即可,配置不用高,2 核 2G 起步,按需加节点。购买走 雨云专属入口 jiyueip.com/link/5617 填优惠码 admin01 五折;国内节点对外建站记得先完成 ICP 备案。
二、后端节点先跑起来
每台后端机器都部署同一套应用(参考前面 Python 后端或 Docker 那篇),各自监听 127.0.0.1:8000。先确认每台单独访问都正常,再加到负载均衡后面——别一上来就排障,分不清是应用问题还是转发问题。
三、Nginx upstream 配置
在负载均衡机器上装 Nginx,编辑站点配置:
upstream app_cluster {
server 后端机1内网IP:8000 weight=2;
server 后端机2内网IP:8000 weight=1;
keepalive 32;
}
server {
listen 80;
server_name your.domain.com;
location / {
proxy_pass http://app_cluster;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
}weight 是权重,性能好的机器分高些;内网 IP 之间通信免费且延迟低,所以后端之间尽量走内网。
四、健康检查与故障转移
基础 upstream 靠 Nginx 主动探测:某台机器连不上,会自动把请求转给其它节点,对用户几乎无感。想要更细的健康检查(比如检测 HTTP 状态码),可以加 nginx-plus 特性或配合外部探活脚本自动从 upstream 里摘掉异常节点。关键点是:任何一台挂了,剩下节点继续扛。
五、会话保持与扩容
如果应用依赖登录态且没用共享 Session/Redis,可以加 ip_hash 让同一 IP 落到同一台机器。需要更多容量时,直接在控制台新开一台雨云机器、部署同样应用、把内网 IP 加进 upstream、reload Nginx 即可,不用停机。
合规使用提醒
负载均衡架构仅用于你合法拥有和备案的站点与服务的流量分发,提升可用性。不得利用多节点搭建违法违规内容分发或绕过监管的服务。涉及用户个人信息时须遵守《个人信息保护法》,做好传输加密与访问控制。






