多个socket服务端,一个socket客户端在调用其中一个不通时,如何有选择的调用其它几个

socket服务端:server1,server2,server3,server4
socket客户端:client1,client2,client3,client4

1.client1先调server1不通,进而试着调用server2,server2不通就调server3,server3不通就调用server4
2.client2先调server2不通,进而试着调用server1,server1不通就调server3,server3不通就调用server4
3.client3先调server3不通,进而试着调用server1,server1不通就调server2,server2不通就调用server4
4.client4先调server4不通,进而试着调用server1,server1不通就调server2,server2不通就调用server3

目的是当一个server服务端调不通,调用其它的,尽量避免失败!
简单的办法就不用说了,求妙招?

2个回答

在Client和Server间加一层分发不就行了,或者加个负载均衡,随便吧,记这个分发器或者负载均衡器为MIDDLE。
middle和Server间用心跳来确认Server是否可用,这样就不会把client过来的连接分发到不可用的client那边,分发算法随便选了, mod, hash,weight都行。

简单的办法不是妙招吗?不太明白你的意思。

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问