您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > 定时器双机方案预研文档
定时器双机方案一定时器方案模型双机热备方案模型:在双机模型的基础之上完成定时器双机方案模型:虚拟IP:10.120.19.253端口号:8080Nginx服务器1(主):10.120.19.184Nginx服务器2(备):10.120.19.179Tomcat服务器1:10.120.19.185:8088Tomcat服务器2:10.120.19.187:8080Nfs程序文件器:10.120.19.186虚拟IP:10.120.19.253端口号:8080Nginx服务器1(主):10.120.19.184Nginx服务器2(备):10.120.19.179Tomcat服务器1:10.120.19.185:8088Tomcat服务器2:10.120.19.187:8080Nfs程序文件器:10.120.19.186定时器模块,定时器管理界面,日志记录,手动执行,服务器端逻辑代码。在双机运行过程中执行定时器逻辑二双机主次热备逻辑双机定时器前提是:两台服务器系统时间必须一致;通过AMFConnection进行连通性测试。需解决以下问题:1,两台服务器同时启动时,定时器只在一台服务器上执行;2,主服务器正常运行时,次服务器上定时器需处于未激活状态;主服务器宕掉,次服务器自动激活定时器程序;服务器伪代码如下://假设A为主服务器IP,B为次服务器IP;//变量status标识服务器定时器状态true为正常运行false为未运行//定时器每隔一定时间执行以下代码,相当于两个服务器上各跑一个定时器If(currentIP==A){If(status==false){status=true;}If(B.functionreturntrue){B.function(setstatus1=false);}else(){//doNothing}}else(currentIP==B){If(A.functionreturnfalse){status=false;}Else{Status=true;}}定时器执行伪代码://当前存在某一台服务器跑定时程序If((status&¤tIp==A)||(!status&¤tIp==B){runTimer();//具体执行所有定时器代码参考以下:}三程序实现设计方案整个双机定时器方案设计为一个模块嵌入到psoms中,包括服务器端逻辑代码,定时器执行相关代码,定时器管理页面,日志页面(包括手动执行操作)。将V6定时器,门户定时器,系统定时器抽取出来,统一存储在一张表中。后续定时器相关操作统一在该表基础上。1,定时器管理页面定时器管理页面包括对原有定时器数据迁移,新建,修改定时器等功能;参考门户定时器和V6定时器:2,日志页面输出定时器执行过程中失败的任务信息列表,并提供手动执行操作。任务名称描述执行时间执行状态操作定时生成首页图片2015-01-2916:45:00失败手动执行
本文标题:定时器双机方案预研文档
链接地址:https://www.777doc.com/doc-2498828 .html