-->
第二課:面向服務架構(gòu)——傳輸語義的升級
正文:其實還是有一些區(qū)別的。對于網(wǎng)絡來說最終肯定還是要找到門牌號的,因為門牌號是你的物理地址,就是你物理上位于哪里。但是我們的網(wǎng)絡是分層的,從應用層到傳輸層一直到底下的物理層,它每一層有不同的語義,每一層有不同的業(yè)務邏輯。
就現(xiàn)在來說,傳輸層對應用層提供的語義,是應用層必須知道下面找到的那個東西的門牌號在哪兒,如果這個門牌號動了,現(xiàn)在傳輸層的語義認為連接那個東西已經(jīng)不是原來的門牌號了,你必須重新發(fā)起所有的連接。就相當于雖然那個人還是他自己,但是對于我們現(xiàn)在的網(wǎng)絡來說,如果他動了,他就不是他了。
但是以服務為中心的邏輯就是說,對于傳輸層對應用層的上層語義來說,應用層只認要的服務的名字,至于它在底下怎么走,把它交給網(wǎng)絡,它們本身不知道這件事情,也不想知道。如果只要這個服務或者說你可以理解只要這個人還在,對于應用層和傳輸層的語義來說它就認為這個連接是穩(wěn)定的,沒有中斷的,一切都照常。
底下可以比如說有千變?nèi)f化各種靈活的路徑,或者你移動之后,我重新路由,這些事情都可以把它放到網(wǎng)絡里面來做,而網(wǎng)絡來處理這個事情比在應用層、更高的層面處理這個事情效率要高的多。
所以說雖然最終還是要找到那個東西的門牌號,但是現(xiàn)在對于應用層來說,它已經(jīng)不需要去找那個門牌號,找門牌號的這個事情交給網(wǎng)絡,它就可以變得非常的簡單,速度和效率都會變得更高,性能也會得到很大的提升。
導語:有人認為,應用層現(xiàn)在也不需要找IP地址做為門牌號,有域名做為中間層,結(jié)合DNS已經(jīng)解決剛才說的那個問題了
DNS是不能完全解決這個問題的,DNS有兩個維度的問題。首先即使使用DNS,但是其實沒有改變傳輸層和應用層之間的以地址為身份標識的這樣一個語義,這樣就導致應用層必須來自己關(guān)心底層網(wǎng)絡的變化。而恰恰是這種應用層必須來關(guān)心底層網(wǎng)絡的變化,才導致你的連接會中斷。
比如說我現(xiàn)在通過DNS查到一個百度的地址,我連到了它,那如果百度換了它的IP地址,我們先不考慮CDN的情況,那么上層應用什么時候去進行DNS的查詢呢,一定發(fā)現(xiàn)我的連接已經(jīng)斷了時,我如果沒斷我不會發(fā)起DNS查詢的。
另外一個維度就是說,即使我們讓DNS去做這件事情,但是DNS其實是一個靜態(tài)的系統(tǒng),他不是為動態(tài)網(wǎng)絡來提供的,不論可擴展性還是響應速度都不能應對實時的動態(tài)網(wǎng)絡的要求,比如說DNS查詢的速度要遠遠慢于底層網(wǎng)絡自動重新路由的速度,以及DNS的更新速度是以分鐘、小時、天來算的,不是說你一個節(jié)點從一個地方移到另外一個地方,全球的DNS就會更新了,不是這樣的。
【版權(quán)歸鈦媒體所有,未經(jīng)許可不得轉(zhuǎn)載】
賬號合并
經(jīng)檢測,你是“鈦媒體”和“商業(yè)價值”的注冊用戶?,F(xiàn)在,我們對兩個產(chǎn)品因進行整合,需要您選擇一個賬號用來登錄。無論您選擇哪個賬號,兩個賬號的原有信息都會合并在一起。對于給您造成的不便,我們深感歉意。
Oh! no
您是否確認要刪除該條評論嗎?