跟我学代码架构设计模式之--高并发服务器应用层协议栈设计要点

要设计一个高并发的服务器,应用层协议栈应该满足如下设计思路:

协议栈要分成底层、中层、和高层,线程要分为IO线程和业务线程:

一、底层连接要采用NIO多路复用、事件通知

二、中层要完成原始TCP数据流到业务层消息的协议编解码

三、高层负责上层业务消息分发和收集(读和写)要完成:

  • 提供上层读写API和事件通知、提供底层连接状态获取相关的API
  • 提供IO线程和业务线程之间的切换,比如读API能完成IO线程到业务线程的转换,写API能完成业务线程到IO线程的转换
  • 要能满足协议收发时序的要求,即做协议时序控制(协调多个请求和多个响应的处理顺序)

四、业务层线程模型要实现为无阻塞异步消息模型

(完)

发布了63 篇原创文章 · 获赞 25 · 访问量 8万+

猜你喜欢

转载自blog.csdn.net/w1857518575/article/details/86510242
今日推荐