Skip to content

Latest commit

 

History

History
23 lines (13 loc) · 1.18 KB

版本历史.md

File metadata and controls

23 lines (13 loc) · 1.18 KB

版本历史

版本的优化,主要是后台服务器的优化。

V 1.0

  • 基本功能都已实现:TCP聊天室、用户注册、好友上线,下线显示,用户头像切换
  • 因为涉及多线程,所以需要用到互斥锁
  • 用户信息更新慢
  • 不支持中文用户名注册

服务器采用的是非阻塞IO+IO复用的模型,即Reactor模型。在事件循环中,每有一个新的连接,就新建一个线程去处理请求,在处理请求的线程中,还包含有对数据库的处理。V 1.0 版本存在很多不足,在实际运行的过程中,同时在线人数达到10人左右,服务器就会崩溃,崩溃的具体原因就是多线程中对临界资源的处理不够完美,然后又看了陈硕的《Linux多线程服务端编程》,在muduo的基础上实现了V 2.0

V 2.0

  • 并发连接数增加
  • 用户信息更新更快
  • 支持中文用户名注册

V 2.0是基于muduo网络库实现的,muduo也是基于Reactor模型实现的,不过是采用线程池来管理线程资源,不是一味的创建新线程来处理新连接,在实现的过程中,可以将业务逻辑将服务逻辑分开,代码结构更加清晰。