基于乐观锁的配置服务器与XServer的交互

  XServer与配置服务器,配置服务器保存有XServer的配置文件中的信息。如何在项目启动时,让XServer从配置服务器中获取到自己的配置信息,并达到通信资源的节省与控制。

通信如下:

注意问题:

假如当XServer和配置服务器都在运行中,这时配置服务器修改了XServer的配置资源,,事件触发这时配置服务器得不停向XServer发送Info1和Info2,直到收到确认Info3;

假如XServer和配置服务器都在运行中,一是突然配置服务器断了,稍后重启,向XServer发送Info1,XServer收到后判断V1=V2,发送NotRequestResource,结束;二是突然XServer断了,分两种可能,断期间配置服务器中XServer的配置资源未改,重启XServer无碍,断期间配置资源改动了,一旦改动,执行上面的不停向XServer发送Info1和Info2,等到XServer重启,也能收到Info1和Info2,不影响系统;

假如XServer收到Info1后,发送RequestResource事件,配置服务器收到RequestResource事件,停止了Info1发送,但Info2发送前,

– XServer断掉,分两种情况,一是配置服务器CfgHost和CfgPort不变,配置服务器由于未收到确认Info3而一直发送Info2,重启XServer,XServer能收到Info2,这里加Info3确认可以,也可以在配置服务器端监听连接,有服务模块连接到它,它就向之发送Info1。这时上面的情况中当重启XServer,配置服务器检测到XServer连接到它了,发送Info1;二是期间配置服务器CfgHost和CfgPort改变了,配置服务器由于未收到确认Info3而一直发送Info2,如果Info2中不带CfgHost和CfgPort,那么万一下次指不定什么时候XServer断开了,由于配置服务器的CfgHost和CfgPort改了,就再也连不上了; –配置服务器断掉了,重启配置服务器,它发送Info1,不影响系统。

努力爱一个人。付出,不一定会有收获;

基于乐观锁的配置服务器与XServer的交互

相关文章:

你感兴趣的文章:

标签云: