skynet:集群

在skynet框架中使用cluster模式,经常有消息在节点之间传递。大部分情况,我们在节点A和节点B之间只需要建立一个连接通道,但是在有些时候我们希望让一些比较独立的业务能占用一条单独的通道进行处理,不希望跟到正常的业务逻辑去抢通道资源。这个时候,我们就需要为某个节点配置多个通道了。

比如,我们要在节点A中再开辟一条连接连通节点B的通道,由于一条通道就是一条tcp连接,所以我们需要为节点B再配置一个端口。我们打开集群的cluster配置文件,添加一个节点B的记录,新分配一个端口:

nodea = "127.0.0.1:50653"
nodeb "127.0.0.1:50654"
nodeb2"127.0.0.1:50655"

 然后重新启动节点,在节点B的启动脚本中,我们也需要在集群中打开nodeb2:

cluster.open("nodeb2")

然后,在节点A中,我们就可以进行跨节点访问了,这个时候,我们可以分别用nodeb和nodeb2进行访问,框架将使用2条tcp通道进行分别处理。你也可以使用netsta命令,查看nodeb和nodeb2的连接情况。

cluster.call("nodeb",".main","xxxxxx")
cluster.call("nodeb2",".main","xxxxxx")

猜你喜欢

转载自www.cnblogs.com/losophy/p/9204573.html