成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

一次微信聊天引發的離婚大戰!

網絡 通信技術 開發工具
今天看到這兩幅圖片,不禁哈哈大笑。互聯網上很多段子或者笑話,其實最能引起笑果的往往來自于真實生活,而不是那些為了笑果而編造的段子。

 今天看到這兩幅圖片,不禁哈哈大笑。互聯網上很多段子或者笑話,其實最能引起笑果的往往來自于真實生活,而不是那些為了笑果而編造的段子。

[[436038]]

圖片來自 包圖網

微信真的會因為網絡不好而造成信息的前后顛倒嗎?真的會。

為什么呢?馬化騰說微信就是一個郵箱,只是這個郵箱比較快,讓你感受不到這是一個郵箱,而讓你有一種即時通信的錯覺。

微信這個郵箱是這么來工作的:Alice 登錄微信服務器,認證身份,上線狀態。這是一個基于 TCP 的長連接,安全加密。

所謂長連接,就是 Alice 只要不是手機沒電或者關機狀態,這個長連接一直都是運行且雙向可以通信的。這個負責登錄的服務器,簡稱登錄服務器。

Alice 給 Bob 發了一段文字,“Are you kidding me?”敲回車。這段文字是通過上文的長連接發送的嗎?

不是的。而是通過一個短連接發送的,這個短連接是 Alice 點開 Bob 頭像才建立的,這是一個 TCP + MMTLS(安全加密)+ HTTP 封裝的短連接。

然后這個消息就被短連接以 HTTP 格式發出去了。這個消息是直接發給 Bob 的嗎?

不是的,而是發給 Bob 的郵箱。Bob 的郵箱是在 Bob 的手機里、還是微信存儲服務器里?

微信服務器。這樣做有什么好處呢?

假如 Bob 在飛機上,手機關機,Alice 消息依然可以將消息發出。如果直接發給 Bob 手機,手機都關機了,那就壓根無法建立連接,自然連消息都發不出。

當然好處還有許多,比如 Alice 與 Bob 的手機都位于 NAT 設備的后方,他們之間的直接通信不一定 100% 成功。

如果 Bob 是在線狀態,登錄服務器會第一時間通過 TCP 長連接,通知 Bob 微信郵箱里有信,至于這封信存在郵箱的什么地方,這是一個 HTTP 格式的鏈接。

Bob 微信會與鏈接所對應的存儲服務器建立短鏈接,將消息下載并顯示到本地窗口,然后關閉短連接。

如果 Bob 是離線狀態,微信服務器其實也不急的,反正消息呆在存儲服務器,不會飛的。等 Bob 下飛機上線了第一時間通知 Bob 微信就好了。

以上就是微信的工作流程。接下來講為何微信會發生消息后發先至的情況?

微信每次敲完一段文字,點擊“發送“,這個消息就觸發了一次:

  • 短連接的建立
  • 消息的傳輸
  • 短連接的斷開

這個是標準的三步曲。當你再次發一段文字時,又觸發了一次三步曲。兩次的三步曲是相互獨立的。

在網絡暢通時,Alice 第一個消息很快就發到 Bob 的郵箱,并被 Bob 微信呈現在窗口里。Alice 第二個消息發出的晚,自然到達得晚,這是非常好理解的。

但是當網絡不好時,第一個三步曲的消息報文不是那么幸運,丟了,然后 Alice 的手機一直在重傳這個消息。Alice 又發送第二個消息,運氣特別好,沒有丟,結果比第一個消息早到了幾秒。

既然微信講究及時通信,微信會第一時間通知 Bob 的微信,只是這個消息通知順序,先是第二個消息,然后才是第一個消息。這樣就造成了微信消息時序的顛倒。

最后,每一段消息內部文字并沒有顛倒,對嗎?

這就是 TCP 的功勞,因為短連接依然使用的是 TCP 做為傳輸協議,TCP 最擅長做的就是保證每一個字節按照先后順序到達。

TCP 是一個可靠協議,可以修復由于網絡暫時的中斷而造成的字節丟失。但是如果 Alice 向 Bob 郵箱上傳信的時候,網絡發生了長時間的中斷,超出了 TCP 最大修復時間,這時微信會提示 Alice,消息發送失敗!

作者:車小胖談網絡

編輯:陶家龍

來源:轉載自公眾號車小胖談網絡(ID:chexiaopangnetwork)

 

責任編輯:武曉燕 來源: 車小胖談網絡
相關推薦

2021-11-01 17:29:02

Windows系統Fork

2017-08-24 17:37:18

DNS緩存分析

2024-05-13 08:37:17

炫技H5UI

2023-07-13 09:12:37

CNCF項目云原生

2019-11-04 10:37:53

MongoDB宕機日志

2018-12-27 09:09:35

2018-01-04 13:53:43

技術命令windows

2022-11-29 21:26:26

跨域配置

2021-03-17 00:17:16

命令應急響應

2020-02-04 14:27:09

架構技術棧微信半月刊

2018-07-16 22:29:29

代碼迭代質量

2020-01-06 09:43:14

賠償TSB遷移

2019-01-16 09:20:42

架構設計JVM FullGC宕機事故

2021-09-08 14:50:38

微信聊天記錄移動應用

2022-06-14 08:00:28

切換包管理器版本

2022-12-17 19:49:37

GCJVM故障

2015-07-17 10:05:03

面試思考

2017-09-01 09:17:51

DNS緩存慘案

2011-06-28 10:41:50

DBA

2020-04-28 15:46:56

物聯網
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产原创在线观看 | 国产精品国产成人国产三级 | 欧美精品成人一区二区三区四区 | 免费看黄色国产 | 国产成人精品久久二区二区91 | 欧美精品日韩精品 | 免费在线日韩 | 午夜资源| 国产在线精品一区二区三区 | 一区二区三区在线免费 | 日韩激情视频一区 | 久久国产欧美日韩精品 | 91精品国产自产在线老师啪 | 成人在线观看亚洲 | 亚洲精选久久 | 午夜精品 | 91精品国产91久久久久久最新 | 日本精品一区 | 国产亚洲精品精品国产亚洲综合 | 国产乱码精品一区二区三区忘忧草 | 亚州一区二区三区 | 91人人视频在线观看 | 天天干天天谢 | 美女天天操 | 欧美日韩福利 | 做a视频 | 亚洲视频在线免费观看 | 日韩欧美一区二区三区免费观看 | 日本公妇乱淫xxxⅹ 国产在线不卡 | 欧美日产国产成人免费图片 | 91精品国产自产在线老师啪 | 日韩一区二区三区精品 | 日日干干夜夜 | 日韩av一区二区在线观看 | 97超在线视频 | 天天干天天草 | 天天干b | 成人av网站在线观看 | 国外成人免费视频 | 久久精品国产一区二区三区不卡 | 亚洲精品丝袜日韩 |