微服务与微服务架构

微服务与微服务架构

​ 微服务化的核心就是将传统的一站式应用,根据业务拆分一个一个的服务,彻底地区偶尔,每一个微服务提供单个业务功能的服务,一个做一件事情,从技术角度看就是一个小而独立的处理过程,类似进程的该连,能够自行单独启动或销毁,拥有自己独立的数据库。

微服务技术栈

微服务条目落地技术
服务开发Springboot、Sptring、SpringMVC
服务配置与管理Netfix公司的Archaius、阿里的Diamond等
服务注册与发现Eureka、Consul、Zookeeper
服务调用Rest、RPC、gRPC
服务熔断器Hystrix、Envoy等
负载均衡Ribbn,Nagix等
服务接口调用Feign等
消息队列Kafka、RabbitMQ、ActiveMQ等
服务配置中心管理SpringCloudConfig、Chef等
服务理由Zuul
服务监控Zabbix、Nagios、Metrics、Spectator等
全连路追踪Zipkin、Brave、Dapper等
服务部署Docker、OpenStack、Kubenetes
数据流操作开发包SpringCloud Stream、redis.Rabbit、Kafka
事件消息总栈Spring Cloud Bus

Spring Cloud 是什么

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ykdKtAXb-1581481070626)(E:\Typora\图片\Spirng Cloud 流程图.png)]

在这里大家可以配合我上面的表格可以一一对比,分布式微服务架构下的一站式解决方案,是各个微服务架构落地技术的集合体,俗称微服务全家桶

Spring Cloud 和Spring Boot是什么关系?

  • Spring Boot专注于快速方便的开发单个个体微服务。

  • Spring Cloud 是关注全局的微服务协调整理治理框架,他将Spirng Boot 开发的一个个单体微服务整合管理起来,为各个微服务之间提供,配置管理、服务发现、断路器、理由、微代理、事件总线、全局锁、决策精选、分布式会发等等集成服务

  • Spring Boot可以离开Spring Cloud独立开发项目,但是Spring Clout离不开Spring Boot,属于依赖关系。

  • Spring Boot专注于快速、方便的开发单个微服务个体。

  • Spring Cloud关注全局的服务治理框架

Dubbo是这么到Spring Cloud的?哪些优点让你去技术选型?

目前成熟的互联网架构(分布式+服务治理Doubb)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-YEpNg3p0-1581481070626)(E:\Typora\图片\Dubbo是这么到Spring Cloud的.png)]

Spring Cloud VS Dubbo 的对比

DubboSpring Cloud
服务注册中心ZookeeperSpring Cloud Netflix Eureka
服务调用方式RPCREST API
服务监控Dubbo-monitorSpring Boot Admin
断路器不完善Spring Cloud Netflix Hystrix
服务网关Spring Cloud Netflix Zuul
分布式配置Spring Cloud Config
服务追踪Spring Cloud Sleuth
数据流Spring Cloud Bus
数据流Spring Cloud Stream
批量任务Spring Cloud Task

总结Spring Cloud 与 Dubbo

问题:

​ 国内的开源RPC服务框架Dubbo的重启维护后,令许多用户为之雀跃,但同时,也迎来了一些之一的声音。互联网技术发展迅速,Doubbo是否能跟上时代?Dubbo与Spring Cloud 相比又有何优势和差异?是否会有相关举措保证Dubbo的后续更新频率?

人物:Dubbo重启维护开发的刘军,主要负责人之一

​ 刘军,阿里巴巴中间件高级研发工程师,主导了Dubbo重启维护后的几个发版计划,专注于高性能RPC框架和微服务相关领域。增幅则网易考拉RPC框架的研发及指导在内部使用,参与了服务治理平台、分布式跟踪系统、分布式一致性框架等从无到有的设计与开发过程。

Eureka基本框架

​ Spring Cloud封装了Netfilx公司开发的Eureka模板来实现服务注册和发现(请对比Zookeeper)

与Dubbo框架进行对比

Eureka

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-525wUbz5-1581481070627)(E:\Typora\图片\Eureka.png)]

Dubbo

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-vIMng7f5-1581481070627)(E:\Typora\图片\Doubb流程图.png)]

分布式架构CAP结论

​ 在分布式架构中往往伴随CAP的结论。因为分布式的架构,不再使用传统的单机架构,多机为了提供可靠服务所以需要冗余数据因为存在分区容忍性P。

​ 冗余数据的同时会在复制数据的同事伴随着可能性 A 与强一制性 C 的问题。是选择停止可用性达到强一制性还是保留可能性选择最终一至性,通常选择后者。

​ 其中zookeeper和eureka分别是注册中心CP AP的两种的实践。他们都是提供服务注册中心的功能。建议使用AP。不强求数据的强一致性,达成数据的最终一致性。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值