微服务平台技术架构

微服务概念

微服务是一种用于构建应用的架构方案。微服务架构有别于更为传统的单体式方案,可将应用拆分成多个核心功能。每个功能都被称为一项服务,可以单独构建和部署,这意味着各项服务在工作和出现故障时不会相互影响。

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/

posted @ 2020-06-02 11:18  好运来了  阅读(5165)  评论(0编辑  收藏  举报