一、结构清晰、不阻塞。
如多线程架构下:划分专门负责监听的;负责数据接收发送的;负责逻辑处理的;负责玩家登陆验证的;负责低速IO操作;负责日志记录的
分布式架构下:划分负责管理TCP链接的;负责分布式消息管理的;负责运行监控、告警、故障点恢复的;负责玩家登陆验证的;负责逻辑处理的;负责缓存数据存储的
二、易管理、调试
根据业务需要,在不同的模块里进行与此模块紧密相关的修改、调整,不会导致业务掺杂在一起,难以区分和调试;一旦出现故障,可以根据故障的表现(以及日志的特征)直接定位在具体模块中进行快速排障。
三、易扩展
因为已经进行了划分,所以扩展过程中并不会影响其他模块,而且如果接口最的好的话,可以动态扩展,所谓扩展,既包括功能性的扩展,也包括负载的扩展。