- 选择供应商(建议:DigitalOcean、Vultr、Linode、AWS SG)并确认数据中心为新加坡(ap-southeast-1 或 sg)。
- 推荐镜像:Ubuntu 22.04 LTS;网络:至少 1Gbps 口(按需选择)。
- 准备 SSH key(本地:ssh-keygen -t rsa -b 4096),在控制台导入公钥并创建实例。记录公网 IP 与默认用户 ubuntu/root。
- 登录:ssh -i ~/.ssh/id_rsa ubuntu@
- 添加 Swap(若内存小):sudo fallocate -l 2G /swapfile && sudo chmod 600 /swapfile && sudo mkswap /swapfile && sudo swapon /swapfile,并写入 /etc/fstab。
- 安装常用工具:sudo apt install -y curl vim ufw htop git unattended-upgrades。
- 禁止密码登录:编辑 /etc/ssh/sshd_config,设 PasswordAuthentication no,PermitRootLogin no,重启 ssh:sudo systemctl restart sshd。
- UFW 基本规则:sudo ufw allow OpenSSH; sudo ufw allow 80; sudo ufw allow 443; sudo ufw enable。检查 sudo ufw status verbose。
- 安装:sudo apt install -y nginx。启动并设置开机自启:sudo systemctl enable --now nginx。
- 使用 certbot 获取证书:sudo apt install -y certbot python3-certbot-nginx;sudo certbot --nginx -d example.com,自动配置 HTTPS。
- MySQL(示例):sudo apt install -y mysql-server;初始化安全配置:sudo mysql_secure_installation。调整 my.cnf(innodb_buffer_pool_size 约为 RAM 的 50%-70%)。
- Redis:sudo apt install -y redis-server,配置为 bind 127.0.0.1,protected-mode yes,必要时启用密码并开机自启。
- 增大文件句柄:编辑 /etc/security/limits.conf,加入 * soft nofile 50000 * hard nofile 50000。
- TCP 内核参数(/etc/sysctl.d/99-sysctl.conf):net.core.somaxconn=65535, net.ipv4.tcp_tw_reuse=1, net.ipv4.tcp_fin_timeout=30, vm.swappiness=10;应用 sudo sysctl -p。
- 安装工具:sudo apt install -y iperf3 sysbench wrk fio。
- 监控:sudo apt install -y sysstat && sudo systemctl enable --now sysstat。使用 top/htop、iostat、sar 实时观察指标。
- 带宽测试:在远端机运行 iperf3 -s,在本机运行 iperf3 -c
- 磁盘测试:fio --name=randread --ioengine=libaio --rw=randread --bs=4k --numjobs=4 --size=1G --runtime=60 --group_reporting。
- Web QPS 测试:wrk -t12 -c400 -d30s http://
- CPU 测试:sysbench cpu --threads=4 run。
- 配置A:1vCPU /1GB /标准磁盘(预算型)。实测:CPU 高占用、QPS 低(单线程小业务可达 ~100-300 QPS),磁盘延迟高。
- 配置B:2vCPU /4GB /NVMe。实测:响应更稳,Nginx 静态 QPS 提升到 ~800-1500,数据库并发处理更好,磁盘 IOPS 明显提高。
- 配置C:4vCPU /8GB /NVMe + 专用带宽。实测:高并发场景下 QPS 可达数千,延迟最低,适合生产级 API/站点。
- 小站/测试:优先选择配置A节约成本并加 CDN 缓存静态资源。
- 中等流量:B 为性价比最佳,配合 Redis 缓存和慢查询优化。
- 高并发/低延迟:选择 C,并配置多可用区备份、负载均衡与水平扩展。
- 若延迟高:排查带宽(iperf3)、磁盘延迟(fio)、CPU 饱和(top/htop)并查看网络丢包。
- 若连接被拒:检查 UFW、云厂商安全组、Nginx 绑定 IP 与端口。
问:在新加坡机房部署和在欧美机房有何差别?
答:主要差别是网络延迟与用户地理位置相关。面向亚太用户优先选择新加坡可显著降低 RTT;另外带宽计费和可选机型、延迟对 CDN 与跨区域备份策略也会影响部署决策。
问:如果只预算有限,先买哪种配置最划算?
答:建议先选 2vCPU/4GB (NVMe) 的中档实例,配合 CDN 与 Redis 缓存,这样能在成本受控下获得较好的吞吐与并发表现,后续根据监控再扩容。
问:如何判断是否需要从配置B升级到C?
答:通过监控关键指标决定:持续 CPU 平均占用>70%、磁盘队列长度高、99th 响应时间上升或频繁出现连接拒绝/队列饱和,且业务增长预期明确,就应升级或横向扩容。