V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
crossoverJie
V2EX  ›  程序员

为自己搭建一个分布式 IM(即时通讯) 系统

  •  
  •   crossoverJie ·
    crossoverJie · 2019-01-02 10:20:23 +08:00 · 6302 次点击
    这是一个创建于 2143 天前的主题,其中的信息可能已经有所发展或是发生改变。

    新的一年第一篇技术文,由于内容较多直接贴链接吧:

    为自己搭建一个分布式 IM(即时通讯) 系统

    源码地址:

    https://github.com/crossoverJie/cim

    第 1 条附言  ·  2019-01-02 14:37:20 +08:00
    附一个视频演示

    群聊:

    私聊:
    20 条回复    2020-07-14 23:39:47 +08:00
    crossoverJie
        1
    crossoverJie  
    OP
       2019-01-02 13:08:33 +08:00
    感觉在自嗨啊,有感兴趣的朋友可以留言交流下。
    Antidictator
        2
    Antidictator  
       2019-01-02 13:09:40 +08:00 via iPhone   ❤️ 1
    😌😌日常帮顶
    yazoox
        3
    yazoox  
       2019-01-02 13:24:41 +08:00   ❤️ 1
    帮顶,看看先!
    flowfire
        4
    flowfire  
       2019-01-02 13:27:18 +08:00 via Android
    与其这样最终各的,不如搞个协议出来,用这个协议的都可以一起通信………
    flowfire
        5
    flowfire  
       2019-01-02 13:27:57 +08:00 via Android   ❤️ 1
    @flowfire 最终各干各的,不知道为啥吞字了………
    agdhole
        6
    agdhole  
       2019-01-02 13:41:19 +08:00
    @flowfire #4 IRC?
    zeromake
        7
    zeromake  
       2019-01-02 13:41:23 +08:00   ❤️ 1
    为啥不用 mqtt 协议
    crossoverJie
        8
    crossoverJie  
    OP
       2019-01-02 13:42:01 +08:00
    @flowfire #5

    那有难度,不过客户端只要按照文中的协议来发消息就可以解析通信。
    crossoverJie
        9
    crossoverJie  
    OP
       2019-01-02 13:45:15 +08:00
    @zeromake #7 MQTT 也只是具体协议不同,做这个的时候想的是尽量简单一些。
    zifangsky
        10
    zifangsky  
       2019-01-02 14:19:55 +08:00   ❤️ 1
    帮顶,实现思路写得很清晰。
    crossoverJie
        11
    crossoverJie  
    OP
       2019-01-02 14:22:11 +08:00
    @Antidictator #2
    @yazoox #3
    @zifangsky #10

    多谢支持。
    tiaod
        12
    tiaod  
       2019-01-02 14:30:24 +08:00 via Android
    @flowfire matrix 协议了解一下

    matrix.org
    tiaod
        13
    tiaod  
       2019-01-02 14:32:00 +08:00 via Android   ❤️ 1
    各搞各的没关系,大不了写个 bridge,桥接一下就能相互通信了。
    yaoliyc
        14
    yaoliyc  
       2019-01-02 16:01:57 +08:00
    支持一下
    zeromake
        15
    zeromake  
       2019-01-02 17:23:22 +08:00
    @crossoverJie
    就是说想要足够的简单所以用来文本的简单协议?倒是和飞鸽比较类似 https://ipmsg.org/protocol.txt
    crossoverJie
        16
    crossoverJie  
    OP
       2019-01-02 17:33:33 +08:00
    @zeromake #15

    准确的说 MQTT 是物联网协议,cim 的主要目的不是实现某个具体场景的需求,只是想提供一个思路和解决方案而已。所以怎么简单就怎么来了。
    qian88199496
        17
    qian88199496  
       2019-01-03 09:25:33 +08:00
    帮顶
    LLaMA2
        18
    LLaMA2  
       2019-01-03 16:24:51 +08:00
    网络不稳定的时候消息的顺序?
    群聊风暴?
    聊天记录的反监控?
    一直有愿望做,可是人终究敌不过懒
    crossoverJie
        19
    crossoverJie  
    OP
       2019-01-03 16:29:39 +08:00
    @ye4tar #18

    https://github.com/crossoverJie/cim/issues/9

    这里有一些讨论,目前还是初版。慢慢来吧,但愿懒癌不要战胜我
    FateBlood
        20
    FateBlood  
       2020-07-14 23:39:47 +08:00
    出一套仿微信的即时通讯源码,支持 ios 和 Android 端有需要的联系微信 itshenmalong
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2527 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 16:05 · PVG 00:05 · LAX 08:05 · JFK 11:05
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.