kbmMW均衡负载与容灾(3)(转载红鱼儿)
在kbmMW均衡负载与容灾(1)中,介绍了利用ClientTransport的OnReconnect事件,对联接的应用服务器的地址进行更换,做容灾处理。实际上,作者还给我们提供了另外一种机制,直接在ClientTransport中定义可联接服务器及如何切换。具体来说就是三个属性,如下图:
1.FallbackServers:定义可访问的应用服务器的列表;利用Add,每次加一个AppServer地址联接串,即服务地址。
2.AutoFallback:启用FallbackServers地址;如果定义了FallbackServers,则该属性应设置为True;
3.MaxRetriesAlternative:切换服务器地址的次数,一般按FallbackServers定义的条目数定义,有几个可联接的服务器就设置为几。
用这三个属性,在设计期定义好,就可轻松实现容灾!当客户端联接请求失败,会自动切换到下一个AppServer,试着重联,直到用完MaxRetriesAlternative定义的次数
这里,对于ConnectionString有必要说明一下,我们在填写FallbackServers时,放一个ClientTransport,然后设置他的联接属性,比如:kbmMWIndyClientTransport