博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

流量复制解决网站的热备份问题

Posted on 2017-12-22 20:19  懒人ABC  阅读(448)  评论(0编辑  收藏  举报

最近也可以考虑用nginx的

Module ngx_http_mirror_module

 

历史:

 

因为考虑到宕机会对数据造成丢失,所以启动请求复制功能,实现数据的实时备份。

A:转发服务器(华东服务器)

B:生产服务器(华东Apache服务器)=》网关(华东服务器)=》华东核心业务服务器

C:备用服务器(华东Apache服务器)=》跨区域网关(比如华北服务器)=》华东核心业务服务器

D:辅助服务器(华东服务器)

E:转发服务器(华北服务器)

在华东服务器出现故障时,切换域名的IP指向到华北服务器,实现华北服务器的继续运行(中间会有短暂的无法访问,10分钟之内)

1,在B服务器上部署tcpcopy的客户端,指向流量复制到C服务器,C服务器把处理结果路由到D服务器,最终D服务器丢弃请求

2,更新华北核心业务服务器的日志服务器的访问来源(Src_IP),因为tcpcopy复制流量时,使用了欺诈型访问源IP

3,在华东服务器出现故障时,通过域名服务商重新设置生产服务器域名的IP指向到E服务器,从而使访问继续正常运行

4,等待华东服务器修复后,对比华东核心业务服务器的访问日志与华北核心业务服务器的访问日志,

     如果华北访问服务器的日志没有缺失,短暂关闭华北服务器访问请求(凌晨),通过脚本完成华北业务与华东业务的同步(含redis、mysql等)

5,切换域名的IP回A服务器,重新启动华北服务器