1. 首先统计当前和预估的并发用户、带宽峰值、请求类型(静态/动态)、延迟敏感度。方法:从现有监控(Google Analytics/Nginx logs)导出每分钟请求数、峰值带宽。将峰值乘以1.5~2作为预留。
2. 确定存储量、IOPS需求和数据库类型(MySQL/Postgres/NoSQL)。测量现有磁盘使用、每日增长量,以及数据库连接数峰值。若有高IO需求优先选择SSD或NVMe,必要时选独立数据库实例或托管DB服务。
3. 确认是否有数据驻留、隐私或行业合规要求(如金融、医疗)。如果法规要求数据存放在香港境内,排除海外托管;若允许可选用海外CDN+香港主机结合。
4. 将可选方案分为:共享主机、VPS、云服务器(IaaS)、独立服务器、托管机柜(colocation)、混合方案。对照需求表(性能、可扩展性、预算、管理能力)给出优先级。例如:小型企业用VPS或云;高性能数据库用独立服务器或托管机柜。
5. 列出候选供应商(数家),逐项验证:数据中心位置、带宽提供商、抗DDoS能力、SLA(可用率)、收费模型(按流量/按带宽)。要求提供试用IP或短期包月。查看在线评价与腾讯/阿里云等大厂在港机房对比。
6. 对候选IP执行测试:Linux下ping -c 10 ip 或者 windows tracert ip;使用 speedtest-cli 测试带宽:pip3 install speedtest-cli && speedtest-cli --server SERVER_ID。记录平均延迟、抖动及上行/下行速率,选择满足应用SLA的节点。
7. 在供应商面板下单:选择机型、镜像、带宽、操作系统。下单后获取公网IP和面板登录。DNS设置:在域名管理处添加A记录指向公网IP(TTL建议600),为www添加CNAME或A记录;如需反向解析,提交PTR申请给供应商。
8. SSH登录:ssh root@IP -p 22。设置非root管理员账户并禁用root远程登录:adduser deploy; usermod -aG sudo deploy;编辑 /etc/ssh/sshd_config,PermitRootLogin no,重启sshd。安装基本软件:apt update && apt install -y nginx ufw fail2ban mysql-client。
9. 推荐结合Cloudflare或供应商抗DDoS服务。配置Let's Encrypt证书:apt install certbot python3-certbot-nginx && certbot --nginx -d example.com。启用WAF(如Cloudflare或供应商提供)并在防火墙开启必要端口:ufw allow 80,443,22/tcp && ufw enable。
10. 静态站点:rsync -avz --delete /var/www/ root@新IP:/var/www/。数据库:mysqldump -u root -p dbname > db.sql,然后scp db.sql root@新IP:/root/ 并在新机上 mysql -u root -p dbname < db.sql。上线时可使用只读模式或短时DNS降权切换以减少数据不一致。
11. 启用定期快照(云服务)或异地备份服务器。示例Cron(每天2点备份):0 2 * * * /usr/bin/rsync -a /var/www/ backup@backup.example:/backup/$(date +\%F)/。数据库备份:0 3 * * * /usr/bin/mysqldump -u root -p'密码' dbname | gzip > /backup/db-$(date +\%F).sql.gz。
12. 部署简单监控:安装netdata快速查看(bash <(curl -Ss https://my-netdata.io/kickstart.sh)),或者用Zabbix/Prometheus + node_exporter。配置HTTP/ICMP监控(Pingdom/UptimeRobot),设置邮件和微信/钉钉告警Webhook。
13. 按需选择带宽计费模式(按95峰值或按流量)。使用自动伸缩的云服务器处理突发流量,静态资源上CDN并开启缓存,数据库使用只读副本分担读写压力以延迟扩容成本。
14. 列出检查项并逐项确认:DNS解析正确、SSL生效、HTTP 200、重要API延迟在可接受范围、备份任务成功、监控告警正常、应急联系人与恢复步骤写入运营手册。
15. Q1:我的业务每天峰值并发只有几百人,应该选VPS还是云服务器?
16. A1:建议选择云服务器或中高配VPS。云服务器能提供弹性扩容,便于应对临时流量;如果预算有限且波动小,可选稳定VPS并预留升级方案,同时将静态资源放CDN。
17. Q2:如何验证供应商的抗DDoS能力是否真实可靠?
18. A2:要求供应商提供SLA与历史事件响应案例,测试时可在低风险窗口用压力测试工具(内部或第三方)模拟流量并观察抖动与丢包(注意法律与服务条款),或者优先选有大带宽骨干与云防护的厂商。
19. Q3:从国内机房迁移到香港后,用户体验如何评估?
20. A3:上线前后分别用用户分布区域的真实设备或第三方监测点测试页面加载时间、DNS解析时间和API响应。重点关注首包时间(TTFB)和丢包率,结合实际业务数据决定是否保留国内CDN加速或采用双机房多活。