fbpx

後端通訊和通訊協定的基礎知識

Contents

從本課程中,學生將學習後端工程的基本原理、後端通訊設計模式、通訊協定(如HTTP/1.1、HTTP/2、HTTP/3、gRPC、WebRTC等)、作業系統核心如何與後端應用程式通訊、作業系統基礎知識(如linux中的執行緒、行程、非同步IO),以及如何建立客戶端與後端的連線、解析請求、以及後端應用程式的執行風格。

從這 15 小時的課程,你會學到

  • 學習後端工程的基本原理
  • 後端通訊設計模式
  • 理解後端通訊協定如何運作
  • 理解作業系統核心如何與後端應用程式通訊
  • 作業系統基礎知識(linux 中的執行緒、行程、非同步IO)。
  • 學習 HTTP/1.1, HTTP/2, HTTP/3
  • 學習 gRPC, WebRTC, WebSockets
  • 學習 TLS 1.2, TLS 1.3, QUIC 0RTT

要求

  • 中級程式設計技能(1-2年)
  • 建構過後端應用程式
  • 基本的網路基礎知識

課程說明

後端工程是一門藝術。在我18年的職業生涯中,我發現某些通訊設計模式不斷出現。客戶端與後端應用程式的通訊方式屈指可數,儘管它們可能更多,但我相信我在本課程中討論的模式是最常見的。這些模式的範例有請求-響應( request-response )、發佈-訂閱( publish-subscribe )、長短和推送(short and long and push)。 

基於這些通訊設計模式,工程師可以使用一些通訊協定進行具體的通訊。雖然核心傳輸工具僅限於 TCP 或UDP,但大量的行業特定通訊協定是建立在這兩種通訊協定之上的,以解決某些問題和使用案例。這些高階通訊協定的範例有 HTTP/1.1、HTTP/2、HTTP/3、gRPC、WebRTC 等等。其他傳輸通訊協定,如 QUIC 是建立在UDP之上的,以使 HTTP/2 的串流媒體在傳輸層面減少。每個通訊協定都有其優點和缺點,並適合某些使用情況。在本課程中,我討論了最常見的通訊協定,並在適當的地方提供了範例和演示。

在客戶端可以發送請求之前,它必須與後端建立一個連線。瞭解連線是如何建立的,以及連線建立的哪些部分是在核心中完成的,哪些部分是在後端應用過程中完成的,是至關重要的。然後,連線如何被後端應用程式接受,以及它如何儘可能快地接受連線,以便核心佇列不被填滿,否則客戶就不能再連線。

連線建立後,客戶端發送了請求,但在後端應用程式中到底發生了什麼來讀取請求?請求到底是什麼?瞭解根據通訊協定解析請求的成本,使工程師欣賞所做的工作,並使他具備更好的工具來解決效能問題或錯誤。

一旦請求到達後端,應用程式就必須執行該請求。當涉及到它可以選擇的執行風格時,後端有一個自助餐式的設計選擇。瞭解行程( process)和執行緒、多行程、多執行緒之間的區別,以及與 CPU 核心或硬體執行緒數量的相關性,對於選擇正確的執行模式至關重要。人們不必拘泥於這些模式,而是可以發明適合自己需求的新模式。

本課程是為那些已經建立了後端應用程式的工程師設計的,它是一個中階-高階的課程,需要一定的程式設計和網路知識,所以我建議在學習本課程之前,如果你沒有網路技能,先學習我的網路工程基礎課程。我希望你喜歡這門課程,並非常感謝你的考慮。

目標受眾

  • 後端工程師
  • 全端工程師
  • 對後端感興趣的前端工程師(必須建立過後端應用程式)。
  • 希望在後端設計方面有更大作為的網路工程師
  • 網站可靠性工程師

講師簡介

Hussein Nasser 軟體工程師,作家 ( 更多講師的課程介紹 )

我叫 Hussein,是一名軟體工程師。 我的軟體之旅始於 1998 年左右,當時我叔叔給了我一本名為 Learn Programming and Visual Basic 2.0 的書。 那本書讓我意識到我喜歡建構軟體的工藝。 使用所有可用的媒體,我會以公告板、部落格、書籍、課程、播客和視訊的形式談論軟體。

這些天我經營著一個 YouTube 頻道,在那裡我涵蓋軟體工程主題,重點是後端技術。 我討論資料庫、代理、安全、網路、協議和程式設計。 我還報導了軟體領域的近期新聞和時事。

我專攻地理資訊系統(簡稱 GIS)領域。 自 2005 年以來,我通過設計和建構製圖應用程式來簡化他們的工作流程,幫助中東的許多組織實施 Esri GIS。 我寫了五本關於 Esri 技術的書,自 2015 年以來我一直是那裡的首席工程師。

使用軟體解決有趣的問題是我真正喜歡的迷人事物之一。 請隨時通過我的社交媒體渠道與我聯繫,提出問題或分享有趣的問題。 我很想聽聽!

英文字幕:有

  • 想要了解如何將英文字幕自動翻譯成中文? 請參考這篇 How-To

  • 點選這個優惠連結 課程特價 | Udemy 永久擁有課程 NT330 起( 在電腦瀏覽器登入,點選“優惠連結”後再回想要的課程介紹中點選“報名參加課程”即可取得 )
  • Udemy 現在越來越多課程有中文字幕,請參考 Soft & Share 中文線上課程
  • 手機上點選優惠連結看到的價格比電腦上看到的貴
  • $代表當地貨幣, 如在台灣為 NT
  • 點選”報名參加課程”有可能因瀏覽器 cookies 轉久一點或回報錯誤而無法連上,請稍等刷新或重新點選就會出現

報名參加課程

Sponsored by Udemy


Lingoda

也許你會有興趣

不受 FB 演算法影響,歡迎透過 e-mail 訂閱網站更新

Comments are closed.

Powered by WordPress.com.

Up ↑

%d 位部落客按了讚: