Fuxiao

Results 27 comments of Fuxiao

感谢你提出的问题和解决方案。v2版本的初衷确实是为了一个事件同时被多个订阅函数进行处理。当时还考虑到取消订阅的API,因而采用了slice的的方案来存入多个函数。但目前的取消订阅的API会出现一个取消全部都取消的问题,因此后续会对该API进行优化,到时候会采用你的方案来进行处理。

node节点本身处理消息是单线程的,故而你在在没有多线程操作map的情况下是不需要加锁的。

> > node节点本身处理消息是单线程的,故而你在在没有多线程操作map的情况下是不需要加锁的。 > > 感谢大佬的解答,逻辑单线程处理,实际项目中会成为性能瓶颈吗?逻辑中如果不是纯内存操作的话 理论上来讲单线程在绝大多数业务场景中都会是一个性能瓶颈点。故而开发者需要根据自身业务特点来选择合适的模型。在实际的业务开发过程中,一般都是结合各个模型的优缺点进行混用,并不存在一招吃遍天下的绝技。

根据你的需求,你应该是想根据路由消息内携带的信息,根据自定义的路由规则来路由到后端机器上。这样的做法太过复杂了,协议层也冗余了过多的信息。其实你可以做N个集群,你在客户端登录的时候根据客户端的版本给客户端动态返回一个网关地址,这样就能简单而且高效地实现你所谓的多版本了。

暂时不支持自定义编解码协议的