日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢(xún)
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷(xiāo)解決方案
網(wǎng)絡(luò)創(chuàng)世紀(jì)

第0x00天

上帝看到了人類(lèi)制造的各種規(guī)格的電腦設(shè)備,也組建了一些規(guī)模極小的、各種各樣的網(wǎng)絡(luò),卻沒(méi)有辦法把它們連接起來(lái)使用,很是傷心。

晚上,上帝就給溫頓·瑟夫托夢(mèng),告訴他怎么樣在一個(gè)不可靠的網(wǎng)絡(luò)環(huán)境下可靠地傳輸數(shù)據(jù),又托夢(mèng)給鮑勃·卡恩,告訴他如何給每個(gè)主機(jī)分配一個(gè)“門(mén)牌號(hào)”, 如何兼容底層協(xié)議多樣的網(wǎng)絡(luò)......

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

于是,TCP/IP誕生了。

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

第0x01天

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

晚上,上帝決定故伎重演,在夢(mèng)里告訴了蒂姆·伯納斯·李“超文本”的秘密, 并且特別囑咐他要買(mǎi)一臺(tái)NeXT計(jì)算機(jī)作為服務(wù)器,因?yàn)樯系弁蓱z那個(gè)被趕出蘋(píng)果公司的家伙: Steve Jobs。

蒂姆·伯納斯·李醒來(lái)后十分激動(dòng),都忘了說(shuō)“感謝上帝!”,馬上就投入了HTTP協(xié)議的制定當(dāng)中。他果然買(mǎi)了一臺(tái)NeXT計(jì)算機(jī),還在上面貼了一張紙: 別關(guān)機(jī),這是一臺(tái)服務(wù)器!

服務(wù)器可是一個(gè)新鮮玩意兒,當(dāng)時(shí)的計(jì)算機(jī),性能非常低下,很難維持成千上萬(wàn)個(gè)來(lái)自瀏覽器的連接。

更重要的是,人類(lèi)用瀏覽器訪問(wèn)服務(wù)器,僅僅為了把服務(wù)器的靜態(tài)文件給下載到本地閱讀,于是蒂姆·伯納斯·李把HTTP設(shè)計(jì)成了無(wú)狀態(tài)的協(xié)議! 這嚴(yán)重違背了上帝的教導(dǎo)。

每次瀏覽器訪問(wèn)服務(wù)器上的網(wǎng)頁(yè),都會(huì)建立一個(gè)TCP連接,等到數(shù)據(jù)傳輸完成,立刻就關(guān)閉連接。每次請(qǐng)求之間毫無(wú)關(guān)聯(lián)。

上帝有點(diǎn)兒生氣,想再給蒂姆·伯納斯·李托夢(mèng),但轉(zhuǎn)念一想: 費(fèi)那勁兒干嘛,讓人類(lèi)自己醒悟吧!

第0x02天

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

如上帝所料, Web越來(lái)越繁榮,各種各樣的網(wǎng)站雨后春筍般出現(xiàn),交互性越來(lái)越強(qiáng),動(dòng)態(tài)性越來(lái)越高,那些單純的,以瀏覽靜態(tài)網(wǎng)頁(yè)為目的的網(wǎng)站已經(jīng)極少了。

人類(lèi)中的程序員發(fā)現(xiàn),蒂姆·伯納斯·李發(fā)明的HTTP協(xié)議實(shí)在是笨拙:每次請(qǐng)求,都得打開(kāi)一個(gè)連接,用完就關(guān),下一個(gè)請(qǐng)求,又得開(kāi)新的連接,在需要高度交互的系統(tǒng)(如聊天、游戲)中浪費(fèi)至極。

這一次,上帝找不到托夢(mèng)的人,只好給整個(gè)W3C的網(wǎng)絡(luò)專(zhuān)家組托夢(mèng): 要節(jié)約,別浪費(fèi),要在一個(gè)TCP連接中發(fā)送多個(gè)HTTP請(qǐng)求!

這就是keep-alive。

程序員們高興了幾天后,很快又發(fā)現(xiàn),即使是keep-alive, 每次HTTP請(qǐng)求都得發(fā)送HTTP Header,還是浪費(fèi)。

更要命的是蒂姆·伯納斯·李設(shè)計(jì)的HTTP協(xié)議都是由瀏覽器發(fā)起請(qǐng)求,服務(wù)器來(lái)響應(yīng)。 現(xiàn)在服務(wù)器的數(shù)據(jù)有了變化,想主動(dòng)告訴瀏覽器,該怎么辦?

有的程序員想出了不斷輪詢(xún)的辦法,讓瀏覽器不斷去問(wèn)服務(wù)器,數(shù)據(jù)有變化沒(méi)有? 數(shù)據(jù)有變化沒(méi)有?

上帝看到這種情景,不由得笑了:可憐的人類(lèi),不聽(tīng)老人言,吃虧在眼前吧!

第0x03天

上帝給Sun公司的Games Gosling托夢(mèng), 讓他創(chuàng)建了Java。

Games Gosling 為了推廣Java, 想出了一個(gè)不錯(cuò)的點(diǎn)子, 在瀏覽器中安裝了一個(gè)插件, 通過(guò)插件可以運(yùn)行Java程序。既然是Java程序, 就可以直接和服務(wù)器建立Socket連接,在這個(gè)連接中,自然是想做什么事情就做什么事情,服務(wù)器也可以主動(dòng)給瀏覽器發(fā)送數(shù)據(jù),效率極高, 完全拋棄了HTTP協(xié)議。

這就是Applet。

但是Applet實(shí)在是不爭(zhēng)氣, 再加上各個(gè)瀏覽器也不斷使壞, 就成會(huì)出現(xiàn)這種情況:

或者干脆是這種情況:

第0x04天

上帝驚奇地發(fā)現(xiàn)了Macromedia這個(gè)公司,它獨(dú)辟蹊徑,創(chuàng)造了一個(gè)叫做Flash的東西, 非常適合做小動(dòng)畫(huà)。

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

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

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

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

后來(lái),連Jobs也被上帝帶走了。

第0x05天

讓上帝沒(méi)有料到的是,隨著Applet和Flash的消亡,JavaScript慢慢地發(fā)展成了前端之王,統(tǒng)治了瀏覽器。

但是由于HTTP協(xié)議的限制,服務(wù)器還是無(wú)法直接給瀏覽器推送數(shù)據(jù)。

人類(lèi)的不滿(mǎn)情緒慢慢累積:“這HTTP用起來(lái)這么麻煩, 能不能讓我們JavaScript直接創(chuàng)建Socket去訪問(wèn)服務(wù)器啊,這樣的話HTTP的一切問(wèn)題都解決了!”

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

1. Socket是個(gè)非常"低級(jí)"的通信方式,是基于Stream的,不是基于消息的。每個(gè)應(yīng)用的通信雙方必須自定義數(shù)據(jù)格式,處理粘包、分包的問(wèn)題。

2. 如果想實(shí)現(xiàn)安全的通信,程序員必須自己來(lái)實(shí)現(xiàn)類(lèi)似與Https的那一套機(jī)制,對(duì)稱(chēng)加密,非對(duì)稱(chēng)加密,消息摘要,數(shù)字證書(shū) ......

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

Michael Carter 醒來(lái)后非常激動(dòng),他決定把新的協(xié)議叫做: web socket !

第0x06天

上帝托夢(mèng)太多,他決定休息一下,人類(lèi)也休息了一天。

這就是星期天的來(lái)歷。

【本文為專(zhuān)欄作者“劉欣”的原創(chuàng)稿件,轉(zhuǎn)載請(qǐng)通過(guò)作者微信公眾號(hào)coderising獲取授權(quán)】


名稱(chēng)欄目:網(wǎng)絡(luò)創(chuàng)世紀(jì)
轉(zhuǎn)載來(lái)于:http://m.5511xx.com/article/djcesjg.html