使用 Go(Golang)中的微服務

使用 Go 建立高可用性、可擴展且有彈性的分散式應用程式

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

  • 了解什麼是微服務以及何時使用它們
  • 如何開發鬆散耦合、單一用途的應用程式,使它們能夠作為分散式應用程式協同工作
  • 如何使用 JSON、遠端過程呼叫和 gRPC 在服務之間進行通信
  • 如何使用 RabbitMQ 透過高階訊息佇列協定 (Advanced Message Queuing Protocol,AMQP) 將事件推送到微服務
  • 如何將分散式應用程式部署到 Docker Swarm
  • 如何將分散式應用程式部署到 Kubernetes Cluster (叢集)

要求

  • 對 Go 程式語言的基本了解
  • 一台連接到網際網路的 Macintosh、Windows 或 Linux 電腦

課程說明

長期以來,Web 應用程式通常都是處理所有事務的單一應用程序,換句話說,就是單片應用程式( monolithic application )。這個整體式程式處理使用者驗證、登入、傳送電子郵件以及所有其他一切事務。雖然這仍然是一種流行(且有用)的方法,但今天,許多較大規模的應用程式傾向於將其分解為微服務。如今,大多數大型組織都專注於使用這種方法建立 Web 應用程序,這是有充分理由的。

微服務,也稱為微服務架構,是一種將應用程式建構成鬆散耦合的較小應用程式集合的架構風格。微服務架構允許快速可靠地交付大型複雜應用程式。微服務的一些最常見的特性包括:

  • 它是可維護和可測試的;
  • 它與應用程式的其他部分鬆散耦合;
  • 可自行部署;
  • 它是圍繞著業務能力來組織的;
  • 它通常由一個小團隊擁有。

在本課程中,我們將開發一些小型、獨立、鬆散耦合的微服務,這些微服務將透過 REST API、RPC、gRPC 相互通信並與簡單的前端應用程式進行通信,並使用 AMQP(高級訊息佇列協定)發送和使用訊息。我們建構的微服務將包括以下功能:

  • 前端服務,僅顯示網頁;
  • 一個身份驗證服務,帶有一個 Postgres 資料庫;
  • 日誌服務,帶有 MongoDB 資料庫;
  • 監聽器服務,接收來自 RabbitMQ 的訊息並對其採取行動;
  • Broker 服務,是進入微服務叢集的可選單點入口;
  • 郵件服務,接收 JSON 負載,轉換為已格式化的電子郵件,然後發送出去。

所有這些服務都將以 Go(通常稱為 Golang)編寫,這種語言特別適合建立分散式 Web 應用程式。

我們還將學習如何將分散式應用程式部署到 Docker Swarm 和 Kubernetes,以及如何根據需要擴大和縮小規模,以及如何在很少或沒有停機時間的情況下更新各個微服務。

目標受眾

  • 曾經使用過單體應用並希望學習如何使用微服務的 Go 開發人員

講師簡介

Trevor Sawler Ph.D

我有二十年的專業軟體開發經驗,也有二十年的大學教授經驗。

身為一名企業家,我曾與許多客戶合作過,包括湯姆森尼爾森、惠普、加拿大皇家銀行、Keybank、Sprint 等。我還擁有豐富的管理和專案管理經驗。我曾領導由 50 名開發人員和藝術家組成的團隊完成價值數百萬美元的專案,也曾領導過規模小得多的團隊完成規模小得多的專案。

作為一名教授,我教授過各種各樣的課程領域,包括電腦科學、英語、愛爾蘭語和美國文學,以及一些連接文科和技術領域的「交叉」課程。

我曾因在 IT 領域的工作而獲得地區、國家和國際獎項,也曾因擔任大學教授的教學和研究而獲得獎項。

字幕:簡中、英文

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

  • Udemy 永久擁有課程 許多課程約 NT400(點擊連結看更多)
  • 年訂閱每月 NT350(再享特別優惠:年度訂閱首年享 25% 折扣) 🌈 悠遊 Udemy 的 26000+ 門課,最大化學習 ( 原價 NT635/月 )
  • Udemy 現在越來越多課程有中文字幕,請參考 Soft & Share 中文線上課程
  • 手機上點選優惠連結看到的價格比電腦上看到的貴
  • $代表當地貨幣, 如在台灣為 NT
  • 點選”報名參加課程”有可能因瀏覽器 cookies 轉久一點或回報錯誤而無法連上,請稍等刷新或重新點選就會出現

報名參加課程

Sponsored by Udemy


也許你會有興趣

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

Comments are closed.

由 WordPress.com 建置.

Up ↑

探索更多來自 Soft & Share 的內容

立即訂閱即可持續閱讀,還能取得所有封存文章。

Continue reading