多站点同步解决方案

需求描述

 

一个站点为了提供多种网络环境,提供多个镜像网站,然后通过路由判断访问来源,使用不同的服务器提供服务,这样的解决方案在目前大型网站中比较常用。

 

但是在网站程序需要更新时,如果操作不当,就容易造成多个站点版本不统一,或者某个站点无法访问的问题,因此,需要一个能够同时更新所有站点镜像的解决方案。

 

解决方案描述:

 

本解决方案通过同时对多台 FTP 服务器的同步管理,实现同步更新,同步备份。如果更新过程有误,自动回滚处理,实现多服务器间的同步更新。

 

此方案使用 B/S 架构,方便构架,使用 asp.net 异步方案,时刻监控上传进度。同时也保证了多文件上传时 http 请求超时的问题。

 

多站点用户权限管理:在大型网站中,一般不会只有一个 www.xxx.com 站点。一般会有多个子站点同时提供服务,例如 aaa.xxx.com 和 bbb.xxx.com. 为不同的用户分配更新站点的权限。对所有子站点实现了统一管理

 

网络拓扑图:

执行更新操作时,先更新 Web 服务更新控制服务器,并保证其内容正确。然后调用同步管理,将 Web 服务更新控制服务器中的内容同时同步到 3 个 Web 服务器中。

 

Web 服务更新控制服务器配置:

         Windows Server 2003 + .net framework 2.0 + SQL Server 2005( 可选 )

明细功能:

1、  同步管理

对站点执行同步操作。

2、  回滚管理

当同步过程出错时,可以手动执行回滚,将备份的文件还原。

3、  同步日志

查看同步过程中 FTP 返回的操作结果。

4、  用户管理

添加、删除、修改用户以及用户对应的权限。

 

同步管理程序流程:

 

异步上传执行流程:


 

容错处理:

 

1、  上传文件过程中 FTP 出错

系统将直接跳出上传过程,报告错误。执行中断。

2、  备份文件过程中 FTP 出错

系统将直接跳出上传过程,报告错误。执行中断。

3、  上传和备份过程正常,覆盖文件前 FTP 出错

将未出错的其他服务器启动自动回滚。

4、  覆盖文件中 FTP 出错

将未出错的其他服务器启动自动回滚,检查出错 FTP 中已经上传的文件。并执行手动回滚。

5、  覆盖文件中有文件被锁死无法更新

启动所有服务器的自动回滚,将所有已经上传的文件回滚至前一版本。

6、  自动回滚失败

                   调整好所有 FTP, 执行手动回滚,已经执行自动回滚的文件无法再执行手动回滚 .

7、  用户取消

用户取消时将不进行之后的操作。但是如果状态已经在覆盖中,为了保障所有文件版本相同,则无法取消。

 

 

相关技术:

1、  asp.net 异步操作

2、  asp.net FTP 操作

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值