思考(八十五):IM 服务设计思路
IM 服务器
IM 服务器,在游戏开发中,俗称聊天服
一般有内嵌在游戏服架构内,与外置于游戏服架构外
外置于游戏服架构外的聊天服,通常就是完整的 IM 服务器
设计目标
- 消息可靠,不丢失
- 无状态,易扩展
- 高性能
服务类型介绍
设计以下服务:
服务类型 | 说明 |
---|---|
Gateway | 网关,保持玩家连接 |
API |
API 服, HTTP Web 服务,处理除聊天流程 外的逻辑,如注册账号、鉴权、好友管理、群组管理等等
|
Single | 单聊消息处理服务 |
Group | 群组消息处理服务(有可重组的缓存) |
MQ | 可靠消息、消息投递解耦、消息缓冲、消息异步化等作用的中间件 |
MangoDB | 保存最近聊天记录,用于消息漫游 |
MySQL | 归档用户全量聊天记 |
思考(八十五):IM 服务设计思路相关推荐
- SpringBoot 系列教程(八十五):Spring Boot使用MD5加盐验签Api接口之前后端分离架构设计
加密算法参考: 浅谈常见的七种加密算法及实现 加密算法参考: 加密算法(DES,AES,RSA,MD5,SHA1,Base64)比较和项目应用 目的: 通过对API接口请求报文签名,后端进行验签处理, ...
- DockOne微信分享(八十五):Docker存储方式选型建议
本文讲的是DockOne微信分享(八十五):Docker存储方式选型建议[编者的话]Docker存储方式提供管理分层镜像和容器的可读写层的具体实现.最初Docker仅能在支持AUFS文件系统的Ubun ...
- 孤荷凌寒自学python第八十五天配置selenium并进行模拟浏览器操作1
孤荷凌寒自学python第八十五天配置selenium并进行模拟浏览器操作1 (完整学习过程屏幕记录视频地址在文末) 要模拟进行浏览器操作,只用requests是不行的,因此今天了解到有专门的解决方案 ...
- 计算机专业必玩游戏,游戏推荐 篇三百八十五:非常好玩的机甲类游戏推荐
游戏推荐 篇三百八十五:非常好玩的机甲类游戏推荐 2020-12-14 15:46:07 20点赞 77收藏 14评论 创作立场声明:哈喽,各位值友的小伙伴们大家好呀,我是你们的老朋友大白(●-●), ...
- 八十五、Python | Leetcode数据结构之图和动态规划算法系列
@Author:Runsen @Date:2020/7/7 人生最重要的不是所站的位置,而是内心所朝的方向.只要我在每篇博文中写得自己体会,修炼身心:在每天的不断重复学习中,耐住寂寞,练就真功,不畏艰 ...
- JavaScript学习(八十五)—数据类型的转换
JavaScript学习(八十五)-数据类型的转换 一.什么是数据类型的转换? 简单来说,就是把一种数据类型的变量转化为另外一种数据类型 二.转化为字符串类型 //把数字转化为字符串 变量.toStr ...
- 达芬奇密码 第八十五章
达芬奇密码 第八十五章[@more@] 第八十五章 "你们寻找的圆球,本应在这位骑士的墓里." 圣殿教堂里的骑土石像无一例外地仰面躺着,头靠在呈长方形的石枕上.索菲只觉得一阵透心凉 ...
- 网络云存储技术Windows server 2012 (项目十五 存储服务间的数据同步)
网络云存储技术Windows server 2012 (项目十五 存储服务间的数据同步) 目录 前言 一.项目背景 二. 项目实训题 前言 网络存储技术,是以互联网为载体实现数据的传输与存储,它采用面 ...
- 真题详解(哈希表)-软件设计(八十五)
真题详解(树的结点)-软件设计(八十四)https://blog.csdn.net/ke1ying/article/details/130869095 要求邮件加密方式传输,邮件最大附件内容可达500 ...
- 前端歌谣的刷题之路-第八十五题-列表动态渲染
前言 我是歌谣 我有个兄弟 巅峰的时候排名c站总榜19 叫前端小歌谣 曾经我花了三年的时间创作了他 现在我要用五年的时间超越他 今天又是接近兄弟的一天人生难免坎坷 大不了从头再来 歌谣的意志是永恒的 ...
最新文章
- Linux那些事儿之我是Sysfs(2)linux设备底层模型
- 知乎如何运用OKR管理公司目标,达成绩效?
- linux下文件的压缩和解压缩
- Oracle 分页查询语句SQL
- PPT快捷键大全(作分析报告的人有福了)
- java write 去bom_Java处理UTF-8带BOM的文本的读写
- 推荐系统实践:从多领域优化到AutoML框架
- 4.Vue跨域session问题解决
- Unity Physics.Raycast踩坑
- sap相同服务器文件复制粘贴,SAP GUI的快捷复制粘贴和栅格操作
- 一款商城APP开发要多少钱?
- 刚入职的新人如何快速了解公司业务--转载
- 两种典型频谱仪架构介绍
- QQ农场外挂开发实践
- python4(循环)
- 高老师的架构设计_隽语集(DD_2101)
- 计算机刚开始学什么时候,新手如何开始学电脑 新手学电脑从何入门
- 驻场开发跟人力外包有什么区别?
- SpringMVC-详解
- 2 OPENVINO : What is Video, what is computer vision, how do we accelerate it on modern computer