[從0到1搭建ABP微服務] - 文章目錄

簡介

《Abp vNext微服務實踐》系列文章中筆者逐一介紹了ABP微服務架構實踐應用的過程,可是因爲微服務架構過於複雜且配置十分繁瑣,讀者在親自體驗中每每不太順利。在本章系列中我將基於ABP微服務架構從新整理構建更輕量實用的微服務,此外我還會會搭配多種微服務組合方式以提升你們對ABP微服務的理解,構建過程當中我會將代碼發佈至GitHub。html

本章系列只是將ABP微服務架構進行從新組合搭建,並不會修改ABP任何應用模塊代碼,也不會違背ABP設計原則,重構的目的只是爲了讓你們更好的理解微服務拆分,重構後微服務會更加輕量化能夠開箱即用。web

架構方案

ABP架構是基於DDD設計,基於模塊化實現,因此使用ABP搭建微服務是十分靈活的,目前我會介紹兩種架構方案。這兩種方案均是基於ABP設計原理,你們能夠根據喜愛選擇一種架構嘗試,也能夠根據本系列文章的分析和本身理解自主搭建。數據庫

基於ABP應用模塊的服務和若干個基於ABP的微服務

這種模式實際上和ABP微服務架構是一致的,在這種模式中我會對ABP應用層逐一構建成微服務發佈,而且這些微服務將有獨立的解決方案。架構圖以下: 架構

架構分析
  • 網關服務:基於Ocelot提供全部微服務API接口聚合、限流、熔斷等功能,此外網關還提供權限聚合服務。
  • 受權服務:爲全部客戶端(client)提供身份受權,給全部微服務包括網關提供身份認證。
  • ABP用戶服務:實現ABP用戶模塊功能。
  • ABP租戶服務:實現ABP租戶模塊功能。
  • 其餘微服務:實現各自業務。

基於ABP基礎服務和若干個基於ABP的微服務

這種模式是將ABP全部應用(用戶、租戶等)彙集在ABP基礎服務中提供統一的租戶、用戶、權限管理。 模塊化

架構分析
  • 網關服務:基於Ocelot提供聚合全部微服務API接口、限流、熔斷等功能,不提供權限聚合服務。
  • ABP基礎服務:實現ABP租戶、用戶、權限等ABP應用模塊功能,此外基礎服務還提供權限聚合功能。
  • 受權服務、其餘微服務:同上。

服務發現、服務治理

ABP微服務架構中直接使用網關配置文件直接微服務地址,因此實際上ABP微服務是不須要發現服務的。可能你們會以爲配置服務地址的方式不太靈活,可是對於初試微服務者來講能夠大大避坑,其實我的以爲服務發現也並不太靠譜。 服務治理你們能夠根據須要在微服務中集成性能監測中間件,也能夠嘗試使用k8s進行管理。微服務

系列文章

在本系列中,我會以更直接的方式呈現ABP微服務搭建全過程,而且會及時發佈代碼,如下是系列文章完成的目錄。性能

方案一

方案二

TODO:

ABP微服務實踐全代碼很快會整理完成,後面會對服務進行逐一發布和講解,如下是系列文章的目標預告。大數據

方案一

  • 《[從0到1搭建ABP微服務] - 搭建網關服務》
  • 《[從0到1搭建ABP微服務] - 搭建WebApp管理後臺》
  • 《[從0到1搭建ABP微服務] - 自建工做流引擎》

方案二

  • 《[從0到1搭建ABP微服務] - 搭建ABP基礎服務》
  • 《[從0到1搭建ABP微服務] - 搭建網關服務》
  • 《[從0到1搭建ABP微服務] - 搭建WebApp管理後臺》
  • 《[從0到1搭建ABP微服務] - 自建工做流引擎》

最後

本系列介紹ABP微服務搭建過程主要是以方便你們更加簡單的嘗試ABP微服務爲目標,在系列以外我會介紹許多數據庫、架構、大數據處理和web開發等技術總結,喜歡的小夥伴推薦關注一波吧~spa

相關文章
相關標籤/搜索