使用 Spring WebFlux 和 Reactive 程式設計建立高響應、可擴展、高效的微服務
從這 13.5 小時的課程,你會學到
- 掌握 Spring WebFlux:了解如何使用 Spring WebFlux 建立現代、可擴展且快速回應的 Web 應用程式。
- 擁抱 Reactive 程式設計:了解反應式程式設計對於建立高效能、可擴展的應用程式的好處。
- 利用 R2DBC:了解如何使用 R2DBC 進行反應式資料存取並提高應用程式效能。
- 透過 HTTP2 實現高效能和可擴展性
- 建立 Reactive 控制器:使用 Spring WebFlux 註解建立反應式控制器並有效處理請求和回應。
- 實作錯誤處理:學習有效的錯誤處理策略,以獲得強大的使用者體驗。
- 使用 WebFilters 進行預處理和後處理:連結 WebFilters 以實現複雜的邏輯並有效地共享資料。
- 實現串流:了解如何實現客戶端和伺服器端串流傳輸以優化資料傳輸。
- 最佳化效能:使用 Gzip 壓縮、HTTP 連接池和 HTTP/2 等技術來提高應用程式效能。
- 掌握整合測試:了解如何使用 WebTestClient 有效測試 Spring WebFlux 應用程式。
- 實踐學習:透過實際的程式碼範例和實驗室學習。
- 真實世界場景:運用您的知識來建立真實世界的 Web 應用程式。
- 專家指導:向專門研究 Spring WebFlux 的經驗豐富的講師學習。
要求
- 對 Reactive 程式設計有深入的了解(如果你是反應式程式設計的新手,可以查看我的課程)
- Spring Boot 知識
- 能適應印度口音:) (請點入試聽,譯者覺得講師有刻意放慢並減少印度口音)
課程說明
先決條件:具備 Reactive 程式設計知識。
課程重點
本課程全面介紹了 Spring WebFlux,這是一個使用反應式程式設計原理建立高度可擴展、有彈性且響應迅速的 Web 應用程式的框架。
您將學到什麼
- 傳統 vs Reactive APIs
- Reactive API 與傳統 API 有何不同。
- Reactive 資料存取 R2DBC
- 學習使用 R2DBC 驅動程式以反應方式連接到關聯式資料庫,使用 Spring Data R2DBC 建立反應式儲存庫,使用反應式資料存取模式實現 CRUD 操作,以及有效地對資料存取層進行整合測試。
- 執行吞吐量( throughput )/效率測試( efficiency test )來展示 R2DBC 的強大功能、它的吞吐量以及與 Spring Data JPA 相比它如何更有效地使用系統資源。
- 建置 CRUD 操作
- 掌握如何使用 Spring WebFlux 註解建立反應式控制器、使用 Flux 和 Mono 處理請求和回應、對反應式控制器進行整合測試。
- 錯誤處理策略
- 探索使用各種運算符來管理反應管道內的異常的技術。了解如何返回有意義的錯誤回應以獲得強大的用戶體驗。
- WebFilter/攔截器 鏈結
- 探索如何實作 WebFilters 來對請求和回應進行預處理和後處理。鏈結多個 WebFilter 以實現複雜的邏輯,將屬性從 WebFilter 傳遞到控制器,並有效地共用資料。
- 使用 WebFlux 進行函數式程式設計
- 利用 lambda 表達式的強大功能來編寫簡潔、易讀的程式碼。使用功能端點( functional endpoints )建立反應式控制器並了解 WebFlux 中函數式程式設計的好處。
- 建置 Reactive 客戶端
- 學習使用 WebClient 建立反應式客戶端,使用反應式串流使用外部 API,並以非阻塞方式( non-blocking manner )有效處理非同步回應。
- 串流
- 使用 WebClient 實作客戶端串流以將資料作為串流上傳,並探索背壓處理以優化資料傳輸。
- 實作伺服器端串流傳輸,使用 WebClient 以串流的形式下載資料。
- 使用 Spring WebFlux 實作伺服器傳送事件 (Server-Sent Events,SSE),以實現從伺服器到用戶端的即時資料更新。
- 優化效能
- Gzip 壓縮
- HTTP 連線池可最佳化頻寬使用率和應用程式可擴充性。
- 利用 HTTP/2 協定實現高效通訊(新!)。
整合測試
掌握使用 WebTestClient 的整合測試,將測試實踐結合到我們整個課程的學習過程中。
課程結構
- 重點關注針對每個模組特定主題的實用程式碼範例和演示。
- 實踐實驗室可以鞏固您在整個課程中所學到的知識。
- 存取資源以進一步學習 Spring WebFlux 和先決條件反應式程式設計概念(文章、教學課程、官方文件)。
在本課程結束時,您將掌握使用 Spring WebFlux 建立現代、高效能且可擴展的 Web 應用程式的知識和技能。
注意
- 本課程要求您對反應式程式設計有基本的了解。
- 加入本課程以掌握 Spring WebFlux 並釋放反應式程式設計的潛力,以開發高效能和可擴展的微服務。獲得使用 Spring WebFlux 的非阻塞和事件驅動架構建立彈性、高效和即時應用程式所需的技能。
目標受眾
任何對使用 WebFlux 進行微服務開發/架構感興趣的開發人員/架構師
講師簡介
Vinoth Selvaraj 首席工程師
Vinoth 是首席工程師,擁有 AWS 認證解決方案架構師助理、認證 Kubernetes 應用程式開發人員和 Google Cloud 工程師等認證。他熱衷於軟體開發,專注於微服務架構、雲端運算以及開發可擴展、高效能分散式系統。
Vinoth 是 Java、反應式程式設計、Spring、Docker、Kubernetes 和雲端運算的狂熱愛好者,他熟練地利用這些技術來提供強大且可擴展的解決方案。
字幕:英文
- 想要了解如何將英文字幕自動翻譯成中文? 請參考這篇 How-To
- Udemy 永久擁有課程 許多課程約 NT400(點擊連結看更多)
- ✨年訂閱每月 NT350 🌈 悠遊 Udemy 的 26000+ 門課,最大化學習 ( 原價 NT635/月 )
- Udemy 現在越來越多課程有中文字幕,請參考 Soft & Share 中文線上課程
- 手機上點選優惠連結看到的價格比電腦上看到的貴
- $代表當地貨幣, 如在台灣為 NT
- 點選”報名參加課程”有可能因瀏覽器 cookies 轉久一點或回報錯誤而無法連上,請稍等刷新或重新點選就會出現
報名參加課程

也許你會有興趣
- Spring 相關線上課程
- ★英語學習地圖 – 練好英文是最大的學習槓桿
- 如何找工作學習地圖 – 找工作不要靠運氣!
- 從 Soft & Share 各種社團頻道挑選你喜歡的加入
發表迴響