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

網絡創世紀

開發 開發工具
上帝看到了人類制造的各種規格的電腦設備,也組建了一些規模極小的、各種各樣的網絡,卻沒有辦法把它們連接起來使用,很是傷心。

第0x00天

上帝看到了人類制造的各種規格的電腦設備,也組建了一些規模極小的、各種各樣的網絡,卻沒有辦法把它們連接起來使用,很是傷心。

晚上,上帝就給溫頓·瑟夫托夢,告訴他怎么樣在一個不可靠的網絡環境下可靠地傳輸數據,又托夢給鮑勃·卡恩,告訴他如何給每個主機分配一個“門牌號”, 如何兼容底層協議多樣的網絡......

第二天,溫頓·瑟夫和鮑勃·卡恩見面以后,交流了一下晚上所做的奇怪的夢,覺得這些天一直思考的問題迎刃而解,不僅大聲叫道:感謝上帝!

于是,TCP/IP誕生了。

有了TCP/IP的支持,大家可以跨越各個子網互相發送郵件(SMTP),可以從遠程的機器上下載文件(FTP),還可以登陸到遠程的機器上去操作(Telnet), 人類非常高興。

第0x01天

上帝看到人類很容易滿足,有點失望,直到他注意到一個叫做蒂姆·伯納斯·李的小伙子。這個小伙子孜孜不倦地在追求一件事情: 把每個電腦中的文檔給連接起來。

晚上,上帝決定故伎重演,在夢里告訴了蒂姆·伯納斯·李“超文本”的秘密, 并且特別囑咐他要買一臺NeXT計算機作為服務器,因為上帝挺可憐那個被趕出蘋果公司的家伙: Steve Jobs。

蒂姆·伯納斯·李醒來后十分激動,都忘了說“感謝上帝!”,馬上就投入了HTTP協議的制定當中。他果然買了一臺NeXT計算機,還在上面貼了一張紙: 別關機,這是一臺服務器!

[[251195]]

服務器可是一個新鮮玩意兒,當時的計算機,性能非常低下,很難維持成千上萬個來自瀏覽器的連接。

更重要的是,人類用瀏覽器訪問服務器,僅僅為了把服務器的靜態文件給下載到本地閱讀,于是蒂姆·伯納斯·李把HTTP設計成了無狀態的協議! 這嚴重違背了上帝的教導。

每次瀏覽器訪問服務器上的網頁,都會建立一個TCP連接,等到數據傳輸完成,立刻就關閉連接。每次請求之間毫無關聯。

上帝有點兒生氣,想再給蒂姆·伯納斯·李托夢,但轉念一想: 費那勁兒干嘛,讓人類自己醒悟吧!

第0x02天

HTTP迅速普及,在Mosaic,網景等瀏覽器的推波助瀾下,人們紛紛上網。

如上帝所料, Web越來越繁榮,各種各樣的網站雨后春筍般出現,交互性越來越強,動態性越來越高,那些單純的,以瀏覽靜態網頁為目的的網站已經極少了。

人類中的程序員發現,蒂姆·伯納斯·李發明的HTTP協議實在是笨拙:每次請求,都得打開一個連接,用完就關,下一個請求,又得開新的連接,在需要高度交互的系統(如聊天、游戲)中浪費至極。

這一次,上帝找不到托夢的人,只好給整個W3C的網絡專家組托夢: 要節約,別浪費,要在一個TCP連接中發送多個HTTP請求!

這就是keep-alive。

程序員們高興了幾天后,很快又發現,即使是keep-alive, 每次HTTP請求都得發送HTTP Header,還是浪費。

更要命的是蒂姆·伯納斯·李設計的HTTP協議都是由瀏覽器發起請求,服務器來響應。 現在服務器的數據有了變化,想主動告訴瀏覽器,該怎么辦?

有的程序員想出了不斷輪詢的辦法,讓瀏覽器不斷去問服務器,數據有變化沒有? 數據有變化沒有?

上帝看到這種情景,不由得笑了:可憐的人類,不聽老人言,吃虧在眼前吧!

第0x03天

上帝給Sun公司的Games Gosling托夢, 讓他創建了Java。

Games Gosling 為了推廣Java, 想出了一個不錯的點子, 在瀏覽器中安裝了一個插件, 通過插件可以運行Java程序。既然是Java程序, 就可以直接和服務器建立Socket連接,在這個連接中,自然是想做什么事情就做什么事情,服務器也可以主動給瀏覽器發送數據,效率極高, 完全拋棄了HTTP協議。

這就是Applet。

但是Applet實在是不爭氣, 再加上各個瀏覽器也不斷使壞, 就成會出現這種情況:

或者干脆是這種情況:

第0x04天

上帝驚奇地發現了Macromedia這個公司,它獨辟蹊徑,創造了一個叫做Flash的東西, 非常適合做小動畫。

 

(小小作品:火柴人打斗)

雖然也和Applet一樣需要在瀏覽器安裝一個插件,但是各大“流氓”瀏覽器居然都支持。

有了插件的支持,瀏覽器的所有限制都不復存在, Flash也可以直接和后端的服務器用Socket進行雙向通信。

可惜的是這Flash壽命不長久,尤其是和上帝鐘愛的Jobs干了一架以后,慢慢地走上了不歸路。

后來,連Jobs也被上帝帶走了。

第0x05天

讓上帝沒有料到的是,隨著Applet和Flash的消亡,JavaScript慢慢地發展成了前端之王,統治了瀏覽器。

但是由于HTTP協議的限制,服務器還是無法直接給瀏覽器推送數據。

人類的不滿情緒慢慢累積:“這HTTP用起來這么麻煩, 能不能讓我們JavaScript直接創建Socket去訪問服務器啊,這樣的話HTTP的一切問題都解決了!”

上帝心中暗喜,人類終于上道了, 但是上帝也清楚,在瀏覽器中直接使用JavaScript去創建Socket和服務器雙向通信是一件吃力不討好的事情, 比如:

1. Socket是個非常"低級"的通信方式,是基于Stream的,不是基于消息的。每個應用的通信雙方必須自定義數據格式,處理粘包、分包的問題。

2. 如果想實現安全的通信,程序員必須自己來實現類似與Https的那一套機制,對稱加密,非對稱加密,消息摘要,數字證書 ......

于是上帝再次托夢,這一次他找到了Michael Carter,告訴他:“汝要帶領大家,基于TCP協議,在應用層實現一套新的協議,要像Socket那樣, 讓瀏覽器和服務器可以雙向通信;還要像HTTP那樣讓程序員容易使用,別在讓程序員去處理那些低級的、麻煩的粘包問題/安全問題。”

Michael Carter 醒來后非常激動,他決定把新的協議叫做: web socket !

第0x06天

上帝托夢太多,他決定休息一下,人類也休息了一天。

這就是星期天的來歷。

【本文為51CTO專欄作者“劉欣”的原創稿件,轉載請通過作者微信公眾號coderising獲取授權】

戳這里,看該作者更多好文

 

責任編輯:武曉燕 來源: 51CTO專欄
相關推薦

2011-10-21 10:37:05

華為Juiper

2011-11-03 16:48:43

網絡安全周刊

2020-03-13 13:21:13

小魚易連

2024-03-11 08:50:00

高溫超導技術

2017-11-10 11:14:28

IntelAMD獨顯

2015-02-13 10:08:19

微信

2012-05-10 09:53:59

2018-07-04 14:29:51

網絡信息安全

2016-12-26 15:05:36

2009-07-23 12:46:40

世紀互聯

2009-05-26 14:37:31

2014-09-05 09:55:44

SDN商用網絡華為

2021-04-08 21:03:23

世紀互聯數據中心

2021-08-06 15:19:39

瞻博網絡世紀互聯數據中心網絡

2021-03-16 14:33:12

區塊鏈比特幣加密貨幣

2021-04-09 09:33:30

JavaOracle谷歌

2009-11-11 15:59:31

2012-05-31 14:04:06

網絡營銷

2023-07-05 14:22:18

網絡以太網

2019-05-13 15:13:42

華為
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 色综合美女 | 久国产视频| 国产高清精品在线 | 日韩午夜精品 | 精品日韩一区二区 | 狠狠操狠狠干 | av午夜激情 | 激情91| 黄色日本片 | 中文字幕一区二区三区精彩视频 | 午夜一区 | 久久国产婷婷国产香蕉 | 国产精品欧美一区二区三区不卡 | 精品国产乱码久久久久久牛牛 | 日韩高清中文字幕 | 色婷婷国产精品综合在线观看 | 91一区二区三区 | 中文字幕一区二区三区在线乱码 | 日韩欧美一区二区三区免费看 | 色.com| 亚洲视频一区在线观看 | 99视频免费播放 | av在线播放网 | 国产精品久久久久久久久久久久冷 | 玖玖视频免费 | 亚洲天堂精品一区 | 在线观看成人精品 | 欧美久久久久久久久中文字幕 | 亚洲午夜av久久乱码 | 成人在线免费观看 | 欧美成人激情 | 欧美激情在线精品一区二区三区 | 农夫在线精品视频免费观看 | 奇米av| 亚洲女优在线播放 | 国产在线视频一区 | 久久久精品 | 99久久久久久 | 亚洲精品久久久久久一区二区 | 日日噜噜噜夜夜爽爽狠狠视频, | 美国a级毛片免费视频 |