微服務平臺技術架構

好運來了發表於2020-06-02

微服務概念

微服務是一種用於構建應用的架構方案。微服務架構有別於更為傳統的單體式方案,可將應用拆分成多個核心功能。每個功能都被稱為一項服務,可以單獨構建和部署,這意味著各項服務在工作和出現故障時不會相互影響。

monolithic-vs-microservices

微服務元件

下圖為搭建微服務平臺常用到的一些生態元件
微服務架構元件

下圖為對應生態元件的一些開源實現,相關原始碼在github中全部可以找到
微服務架構元件實現

下面的表格為專案對應的github地址,方便查閱

序號 元件名 github地址
1 apollo https://github.com/ctripcorp/apollo
2 nacos https://github.com/alibaba/nacos
3 soul https://github.com/Dromara/soul
4 redis https://github.com/antirez/redis
5 sentinel https://github.com/alibaba/Sentinel
6 rocketmq https://github.com/apache/rocketmq
7 lmstfy https://github.com/bitleak/lmstfy
8 saturn https://github.com/vipshop/Saturn
9 flink https://github.com/apache/flink
10 shardingsphere https://github.com/apache/shardingsphere
11 seata https://github.com/seata/seata
12 elasticsearch https://github.com/elastic/elasticsearch
13 porter https://github.com/sxfad/porter
14 skywalking https://github.com/apache/skywalking
15 prometheus https://github.com/prometheus/prometheus
16 id-generator https://github.com/Meituan-Dianping/Leaf

電商交易體系技術全景圖

交易體系技術全景圖

上圖是個人根據之前的一些工作積累描繪出來的,當然這些只是冰山一角。其中大部分元件都有在公司實際使用過,裡面都是開源元件,因為平常工作都是使用Java,所以基本都是從Java裡面做的選型。

至於最終技術棧的選擇,每個人有不同的認知及經驗差異,可能會有其他的一些更好的想法,這個非常好。沒有最好的,只有更合適的。可以結合公司的需求,團隊的成員熟知度等因素綜合考量後,完成這個技術體系的搭建即可。

參考文獻

https://zh.wikipedia.org/wiki/微服務

https://microservices.io/

相關文章