跳至主要內容
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?

4563博客

全新的繁體中文 WordPress 網站
  • 首頁
  • 好奇 telegram 是如何实现保存聊天记录的,存在服务器上?
未分類
2 11 月 2020

好奇 telegram 是如何实现保存聊天记录的,存在服务器上?

好奇 telegram 是如何实现保存聊天记录的,存在服务器上?

資深大佬 : oooolongtea 3

最近在研究聊天系统软件的系统设计架构,因此遇到了这个迷思。
因为 telegram 的 faq 页面提到了他们是云服务,那么这是不是意味 telegram 的聊天记录是存在云服务器上(前提是这个云服务器的存储空间够大)。
还是说,每次这个云服务器其实一直向数据库同步抓取聊天记录?
求各位指导。
大佬有話說 (15)

  • 主 資深大佬 : oooolongtea

    @Livid
    L 大你好,能麻烦你帮我把这个问题转发到这个版块吗? https://v2ex.com/?tab=qna

  • 資深大佬 : webshe11

    是的啊 普通聊天并不是端对端加密的,聊天记录都在云上

  • 資深大佬 : Jerami

    文字根本占不了多少信息,图片的话可以参考百度网盘模式。

  • 主 資深大佬 : oooolongtea

    @Jerami 你的意思是,针对不同的用户,比如 id=99 的用户,每次他连到 telegram 上,有一个专门的云服务器,这个服务器专门是分配给这个用户的,然后这个用户的消息、图片都存在这个云服务器上,是这样的吗?

  • 資深大佬 : ochatokori

    @oooolongtea #4 怎么可能。
    文字消息占不了多少地方直接建索引存库,百度网盘模式大概是指记录图片散列值不同用户共享一个文件

  • 資深大佬 : delectate

    @oooolongtea “这个服务器专门是分配给这个用户的”,这成本得多高啊。

    实际上很简单,表这样设计就行:
    table: group
    messageID|userID|sendTime|recvTime|Read|payloadType|payloadContent|delete
    如果 userid 在消息内,且 recvTime (收到消息的时间)是空,已读为 False,一股脑推给该 userID 的客户端就行了。

  • 資深大佬 : BrettD

    @oooolongtea 不是专门的服务器,大家的聊天信息都存在一起

  • 資深大佬 : EasonC

    你应该是想知道为什么我的聊天记录自己删了,后台是能看到,然后才想问 telegram 的聊天记录是怎么保存的,我知道你是那个群里的谁了哈哈哈哈

  • 主 資深大佬 : oooolongtea

    @EasonC 我没明白你在说什么。 我只是想知道 telegram 的架构,因为我最近在看系统设计方面的书。

  • 主 資深大佬 : oooolongtea

    @delectate
    谢谢谢谢。你的意思是数据库是线性数据库( mssql ),然后每次我连接到一个 gateway 的时候,这个 gateway 直接和数据库连接读取我这个账户的聊天记录?

    示意图如下:
    客户端 — 网关( gateway) — 数据库。

    在网关在数据库之间难道没有服务器什么的吗?

  • 主 資深大佬 : oooolongtea

    @BrettD 都存在一个服务器上,然后每次你连的时候,服务器会专门腾出一个空间来存放、显示你的了解记录,是这样吗?

  • 資深大佬 : BrettD

    @oooolongtea 不用专门腾出一个空间呀,所有信息都存在一起

  • 資深大佬 : BrettD

    @oooolongtea 显示聊天记录是客户端的事情

  • 主 資深大佬 : oooolongtea

    @BrettD 谢谢。那么是不是所有聊天记录都存在一个云服务器上,然后我登录的时候,云服务器会根据我的 user id,只显示我这个账户对应的聊天记录?

  • 資深大佬 : BrettD

    @oooolongtea 没看懂你在说啥,显示聊天记录是客户端的事情,服务器又不显示聊天记录

文章導覽

上一篇文章
下一篇文章

AD

其他操作

  • 登入
  • 訂閱網站內容的資訊提供
  • 訂閱留言的資訊提供
  • WordPress.org 台灣繁體中文

51la

4563博客

全新的繁體中文 WordPress 網站
返回頂端
本站採用 WordPress 建置 | 佈景主題採用 GretaThemes 所設計的 Memory
4563博客
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?
在這裡新增小工具