默认
发表评论 7
想开发IM:买成品怕坑?租第3方怕贵?找开源自已撸?尽量别走弯路了... 找站长给点建议
请大家帮忙看看我的“客服+机器人客服+IM”架构思想
阅读(25240) | 评论(7 收藏 淘帖
使用技术如下:
  • - JAVA 1.8
  • - SpringBoot
  • - Websocket
  • - Netty
  • - RabbitMQ
  • - Redis

实现想法:

总体流程:

  • - 客户端指用户使用的客户端。客户端统一使用Websocket发起连接请求到后台的Netty服务器
  • - 客户端连接成功之后,紧接着想服务器发起一段报文。报文内含 客户端的用户id等信息
  • - Netty接收到请求之后将Channel与客户id绑定,存储到java.util.map 里面
  • - 每次接收到请求判断map里面是否存在消息接受者的id。如果没有存到消息同步库。待接收者上线后拉取信息

客服机器人:
  • - 客服机器人由后台写netty客户端连接到服务器,机器人与普通客户之间以客户id开头字母匹配。

以上写的信息有点不详细。想请教一下各位大神指出不足之处。
  • - 暂不考虑传输 音频、视频等。目前只传送纯文本
  • - 暂不考虑报文安全性
  • - 暂不考虑报文大小、浪费的流量以及电量等
  • - 暂不考虑大量并发
  • - 暂不考虑分布式部署

目前只是实现业务目标。
2018年12月20日- 现在又多了一个问题。怎么把这玩意弄成高可用的、、

2018年12月21日-  如果管理channel等信息存储在map里面。这样对于高可用的行不通的,一旦单点故障。整个IM就完蛋了。

顺便吐个槽,网站管理员能让这个富文本框支持md吗?用的不太顺手。




即时通讯网 - 即时通讯开发者社区! 来源: - 即时通讯开发者社区!

推荐方案
评论 7
你写的思路,差不多能实现。

多问一句,客户端是指网页吗
自已从头开始写这些,坑太多了,为你默哀3分钟
引用:JackJiang 发表于 2018-12-18 18:55
你写的思路,差不多能实现。

多问一句,客户端是指网页吗

这个客户端不单指 网页
引用:Shahala 发表于 2018-12-18 19:35
自已从头开始写这些,坑太多了,为你默哀3分钟

大哥。评价一下我这个思路呗。给出可行性的意见
引用:JackJiang 发表于 2018-12-18 18:55
你写的思路,差不多能实现。

多问一句,客户端是指网页吗

大神啊。腾讯qq、微信他们是怎么做的。我的这个思路还是有点问题。不利于扩展。特别是还有计划要融入客服、机器人客服等
引用:amarone 发表于 2018-12-20 16:15
大神啊。腾讯qq、微信他们是怎么做的。我的这个思路还是有点问题。不利于扩展。特别是还有计划要融入客服 ...

你最好还是研究一下已有的工程,你可以去研究研究MobileIMSDK:https://github.com/JackJiang2011/MobileIMSDK,把代码下载下来理解一下,可能会有新的收获。
引用:JackJiang 发表于 2018-12-20 16:47
你最好还是研究一下已有的工程,你可以去研究研究MobileIMSDK:https://github.com/JackJiang2011/Mobile ...

好的。谢谢。
打赏楼主 ×
使用微信打赏! 使用支付宝打赏!

返回顶部