terry8210
terry8210
能否修改IP呢,不要127.0.0.1
是否导入无所谓,毕竟针对中小规模的机器群,我想问有没有机器的性能监控,CPU,内存,网络,IO等
如果确实16M限制,可以分开多个字段存储。
其实我也向希望cluster可以支持同类服务多个实例的情况下,自动路由,自动替换,特别是在某个节点不可用的情况下,类似微服务的容错处理。
@fanyh @JieTrancender @cloudwu 我有一个想法打算这样实现,引入etcd作为服务发现,每个skynet有自己的唯一命名,例如game,login,common(好友,公会,支付充值)等等,特别针对一些无状态的服务,可以提供多份实例,然后每个进程都有这样一个服务master node用于把自身的服务名字(地址,端口,服务名,所属功能)注册到etcd,然后通过,cluster.register同时使用方启动一个slave node主要是监听那些节点服务有效,然后把提供相同功能的服务汇总一起,生成一个cluster.reload需要的table,然后上层业务根据需求进行(hash,失败retry)调用,针对进程内的服务想调用集群中的无状态服务则只需要通过一个功能名就可以发送业务,slave node会自动根据名字找到那些相同的服务,从而进行简单的微服务弱支持,全部都是在cluster基础上做一层业务包装,另外如果节点发生变化会通过监听来cluster.reload目前的服务,初步想法,请教各位是否可行。
借助cluster + etcd就可以很好实现了,不需要修改然后底层代码,上层做一个服务,做转发,能够达到同类服务的自动随机选择和或者负载选择等等,然后节点上线下线就自动去reload即可。
> > 借助cluster + etcd就可以很好实现了,不需要修改然后底层代码,上层做一个服务,做转发,能够达到同类服务的自动随机选择和或者负载选择等等,然后节点上线下线就自动去reload即可。 > > 节点上线下线自动去reload 是不是需要有一个中心来 广播 给他节点reload 节点本身自己监听etcd的更新来reload即可,如果你说是中心广播,etcd就是中心
> > 一个简单的业务状态的不建议设计比较复杂的越多过程 > > 这个深有体会,我们的项目就是像楼主那样使用集群模式拆分了好多节点(类似微服务)导致了好多因为rpc调用结果异常的BUG,最后无奈重构成单节点的模式。 游戏不像互联网产品,高度集成的产品,基本游戏业务都在单节点处理,针对好友聊天需要用到的跨节点操作可以不处理异常行为,针对一些全区全服的跨服玩法,匹配后无非还是进入一个独立的空间进行,至于是本节点转发还是客户端主动连接独立空间,可以根据需求来确定。
这不是issue吧
H5 前端源码都没有