微服务技术栈
什么是微服务技术栈微服务技术栈:多种技术的集合体。什么意思呢?我们先看这个问题“我们讨论分布式的微服务架构的话,它有那些维度?”回答这个问题时候,我们再绕一个圈子,假设现在90后、95后是E时代下的数字化生活,我们要符合这一主题,我们应该有那些维度呢?我们一定熟悉一个小米品牌,也就是雷布斯将很多高科技的东西做成了白菜价,让很多平民可以享用雷布斯超级关心00后的年轻人,很恐怖的,有手机、电...
什么是微服务技术栈
微服务技术栈:多种技术的集合体。什么意思呢?
我们先看这个问题“我们讨论分布式的微服务架构的话,它有那些维度?”
回答这个问题时候,我们再绕一个圈子,假设现在90后、95后是E时代下的数字化生活,我们要符合这一主题,我们应该有那些维度呢?我们一定熟悉一个小米品牌,也就是雷布斯将很多高科技的东西做成了白菜价,让很多平民可以享用
雷布斯超级关心00后的年轻人,很恐怖的,有手机、电视、笔记本、智能家电,这些我们认了,关键更恐怖的是小米牙刷都有了,小米沙发、被子、床垫,我的妈呀,如果再过两天小米众筹成功的话,又会出现一个新的东西叫小米马桶。
这时候你还能说小米是一家手机公司吗?它是不是慢慢的产生了一种东西叫生态,你离不开,基本上你敢去小米卖店的话,有可能一进去不会只买一样东西,会买一堆东西。
小米的生态和我们的微服务技术栈有什么关系呢?E时代下的数字生活是不是需要很多的电器,小米科技做了很多的电器,我们用一家品牌就可以。对标到我们的微服务架构看,会有
- 服务治理
- 服务注册
- 服务调用
- 服务均衡
- 服务监控
- 。。。
也就是,我们要符合微服务架构,就要有上面列举的一堆东西,这堆东西中的每一个是不是需要一个具体的组件来承载,比如
组件类别 | 组件名称 |
---|---|
服务治理 | dubbo |
服务注册 | zookeeper |
服务负载均衡 | nginx |
服务监控 | 自己实现 |
从上表可以看到这些都是写杂牌子的。我们要完成微服务架构的各个维度,也不跟你客气,跟小米科技一样,也有一个厂商它来给你提供了,这个厂商就是springcloud,它相当于小米科技满足于一个重要的主题,主题下面又有多种技术维度落地,也不用买别的品牌了,就用一个牌子享用一条龙服务。
微服务技术栈有哪些
天上飞的理论,必然有落地的实现。“分布式的微服务架构”就是天上飞的理论,“服务开发、服务调用、服务注册。。。”这些就是落地的维度。
我们想想哪些技术能够满足这些落地的维度,最终在这么一个架构上面,谁能把最好的结果组合起来,这时候就是完美的微服务解决方案了。
微服务条目 | 落地技术 |
---|---|
服务开发 | Springboot、Spring、SpringMVC |
服务配置与管理 | Netflix公司的Archaius、阿里的Diamond等 |
服务注册与发现 | Eureka、Consul、Zookeeper等 |
服务调用 | Rest、RPC、gRPC |
服务熔断器 | Hystrix、Envoy等 |
负载均衡 | Ribbon、Nginx等 |
服务接口调用(客户端调用服务的简化工具) | Feign等 |
消息队列 | Kafka、RabbitMQ、ActiveMQ等 |
服务配置中心管理 | SpringCloudConfig、Chef等 |
服务路由(API网关) | Zuul等 |
服务监控 | Zabbix、Nagios、Metrics、Spectator等 |
全链路追踪 | Zipkin,Brave、Dapper等 |
服务部署 | Docker、OpenStack、Kubernetes等 |
数据流操作开发包 | SpringCloud Stream(封装与Redis,Rabbit、Kafka等发送接收消息) |
事件消息总线 | Spring Cloud Bus |
… | … |
说明:看上表的微服务条目列中“服务配置与管理”,它类似接口,落地技术“Netflix公司的Archaius、阿里的Diamond等”都是这个接口的实现类。
更多推荐
所有评论(0)