# JkIM **Repository Path**: jeffreykakk/JkIM ## Basic Information - **Project Name**: JkIM - **Description**: 一个以微服务为架构的即时通讯系统 - **Primary Language**: C++ - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2024-09-23 - **Last Updated**: 2024-10-21 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # JkIM #### 1. 基本介绍 这个聊天室项目采用微服务架构,使用了多种现代C++开发技术和工具。它结合了高性能的RPC框架、分布式系统组件、消息队列、搜索引擎等,以实现一个可扩展、高性能的聊天应用。同时,项目还集成了云服务,如短信和语音识别,以提供更丰富的功能。 #### 2. 技术栈 - **brpc**: 百度开源的RPC框架,用于微服务间的通信。 - **etcd**: 分布式键值存储系统,用于服务注册与发现。 - **RabbitMQ**: 消息队列,用于异步消息处理。 - **Elasticsearch**: 搜索引擎,可能用于消息搜索功能。 - **Redis**: 内存数据库,可能用于缓存和会话管理。 - **MySQL**: 关系型数据库,用于持久化存储。 - **WebSocket**: 用于实现实时双向通信。 - **httplib**: C++的HTTP客户端/服务器库。 - **protobuf**: 用于数据序列化和RPC接口定义。 - **spdlog**: 高性能日志库。 - **gflags**: 命令行参数解析库。 - **ODB**: 对象关系映射(ORM)框架,简化数据库操作。 - **JSON for Modern C++**: JSON解析库。 - **阿里云短信服务**: 用于发送短信验证码。 - **百度语音识别**: 集成了语音转文字功能。 - **CMake**: 跨平台构建工具。 - **Makefile**: 项目构建脚本。 - **Git**: 版本控制系统。