技术栈 Go/Kafka/Redis/Mongo 不知此方案是否成熟 能否满足轻量级的 IM 系统 包含群聊
1
darkweb 2019-07-20 11:07:47 +08:00
做吧 加油
|
2
polebug 2019-07-20 12:41:18 +08:00 via Android
为什么要用 mongo...
|
3
richzhu 2019-07-20 13:18:00 +08:00 via iPhone
可以带我一个吗?我是 Go 新人,给我点边边角角的活就好,不收钱只收反馈,告诉我代码哪里有需要改进的地方
|
4
securityCoding 2019-07-20 13:23:47 +08:00
可以看看 goim , B 站的架构师开源的
|
5
guyeu 2019-07-20 14:08:52 +08:00
这技术栈我也有。。。
|
6
niubee1 2019-07-20 14:11:54 +08:00
老实说, 用这个架构你根本没有这么多机器去撑连接数
|
7
lihongjie0209 2019-07-20 14:24:34 +08:00
"Go/Kafka/Redis/Mongo"
"能否满足轻量级的 IM 系统" 自己想想如果你开发出来要部署的话需要多少机器, kafaka*3 redis*3 mongodb*3, 光存储这一块就最少需要 3 台机器, 而且只会更多. 一个光部署就需要 3 个中间件, 3 台以上服务器的软件怎么可以被称为轻量呢? |
8
misaka19000 2019-07-20 14:26:14 +08:00 via Android 1
你问可不可以?那当然是可以的
|
9
liulaomo 2019-07-20 15:09:32 +08:00
Kafka 太耗内存,nats 要好很多。Mongo 的必要性也不是很大。
其实只用 redis 就行,redis 5 已经支持 stream 了。 |
11
laravel 2019-07-20 18:25:07 +08:00
gopush-cluster、goim 我学 go 语言的时候经常看他们的代码
|
12
iamJack 2019-07-20 18:40:08 +08:00
@misaka19000 7 月加急名单
|
13
Leigg 2019-07-20 21:22:02 +08:00 via Android
最近也在构思一个 im 框架,用 ws,先看看别人的架构是怎样的,比如怎样支持海量连接数 /私聊 /群聊,怎样方便集群部署快速提高性能等等
|
14
Immortal 2019-07-20 21:28:19 +08:00
我也一直在想这个。。但一直没去做 感觉自己功力不够 期待楼主分享
|
15
pubby 2019-07-20 22:19:15 +08:00 via Android
最近刚做了一套
Go/beanstalkd/redis/mysql ws 接入支持分布式部署 |
16
niubee1 2019-07-20 23:29:26 +08:00
呵呵, 都是老套路, 不搞一堆机器都跑不起来的, 自己玩太重(太贵),公司拿来用的话, 你是要怼微信? Slack ?拿投资了么?没投资服务器的钱都花不起吧。
|
17
crossoverJie 2019-07-20 23:57:20 +08:00
|
18
python 2019-07-21 01:06:50 +08:00 via Android
最近写了个单机客服系统,用的 Go,MySQL,Redis
|
19
STRRL 2019-07-21 01:50:47 +08:00 via Android
先明确要实现什么功能 再考虑用什么中间件
脱离实际需求谈组件都是耍流氓 |
20
laminux29 2019-07-21 03:18:13 +08:00
题主其实就是喜欢 Go/Kafka/Redis/Mongo 这一套技术栈,想凭借兴趣,用这一套东西,做个 IM 玩具,来玩玩罢了。
对于这种情况,建议大家支持鼓励他。 |
21
Leigg 2019-07-21 06:39:39 +08:00 via Android
@crossoverJie 真是缘分,我前几天就看过老哥的项目,还给你了 star。
|
22
alpha2016 2019-07-21 08:08:53 +08:00
redis + go ,使用长连接 + brpop 这个方法阻塞消费 redis 队列数据,然后数据持久化可以使用 mysql,消息 ack 机智可以使用延迟队列,或者 brpoplpush 这个方法,多个线程检查一下就可以的。楼主喜欢这套技术栈不错,可以尝试一下,弄好了叫我围观哈
|
23
imndx 2019-07-21 08:39:51 +08:00 via Android
|
24
Y4ssss 2019-07-21 09:02:46 +08:00 via iPhone
加油,做好了围观
|
25
opengps 2019-07-21 10:32:10 +08:00
问下楼主侧重点是啥?我想到 2 个:
1,技术:为了把这几个技术用起来,那么直接开干吧 2,功能:轻量级 im 重点在于 socket 长连接,配合下数据库完事了 |
27
lairdnote 2021-03-05 14:37:54 +08:00
哈哈 哥们你做出来了吗?
|