项目展示
登录界面
注册界面
聊天界面
实现功能
实现注册、登录,一对一聊天的功能
服务端原理介绍
服务端整体业务示意图
各个模块的业务:
数据库:保证用户信息的持久化到数据库中(如昵称、账号、密码、学校、好友列表等)
用户信息管理:在服务器初始化阶段会调用相应mysql C-API接口将数据库的内容全部读到内存中,用户信息管理类将该信息通过unordermap<自定义格式>维护起来,如果工作线程在处理客户端请求时设计写操作,那么用户管理模块会调用相应的接口更改该数据库相应内容。
所有的队列:由于是多线程编程,因此在设计安全队列时要考虑到线程安全,这里所有的队列采用的都是生产者消费者模型。