消息系统设计

我要开发同款
hellobbr 2024年10月10日
22阅读
所属分类作品

作品详情

项目名称: IM即时通信系统
项目概述:一款可用于企业内部的即时通讯软件系统平台。支持PC端一对一聊天,群聊,文件共享,图片/短视频,表情包,用户头像,消息数据的持久化的功能。整个后端服务架构主要由LoginServer,MsgServer,RouteServer,DBproxyServer,FileServer,MsfsServer这6个服务组成;另外通过WebServer+HttpMsgServer实现后台对用户的注册和管理。
开发环境:Linux + Windows + C/C++ + Nginx + redis + mysql
使用技术:Nginx;DNS域名解析协议;http/https;websocket;php;基础组件的封装;epoll网络库的封装;TCP/IP协议栈;threadpool;bufferpool;reactor反应堆;ZeroMQ消息队列通信中间件;openssl开源加密库;
json;编码/解码;压缩/解压缩;log日志系统;redis/mysql连接池设计;数据库基本操作;架构上应用p2p网络去中心化技术;cmake;makefile;配置和文件的读取。
项目负责:
1. 架构整体的实现,研究p2p架构,网络去中心化技术;
2. 通过Nginx实现水平扩展的MsgServer的负载均衡;
3. 基础组件threadpool,bufferpool,netlib的开发和封装;
4. 通过mysql/redis连接池的设计实现数据持久化到数据库;
5. 通过自定义协议实现服务器数据之间的传输,采用protobuf做二进制数据流的序列化和反序列化;
6. 采用ZeroMQ消息队列增加MsgServer和DBServer之间消息的吞吐量
声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论