微服务技术发展

一、java开发趋向

单体应用:SpringBoot

微服务项目:SpringCloud技术栈(分布式微服务架构的一站式解决方案,是多种微服务架构落地的集合体)

二、微服务&分布式&集群概述

微服务

拒绝大型单体应用,基于业务边界进行服务微化,各个服务独立部署运行

分布式&集群

集群:是个物理形态,指的事将几台服务器集中在一起实现同一业务

分布式:是个工作方式,建立在网络之上的软件系统

案例:京东是一个分布式系统,众多业务运行在不同的机器,所有业务构成一个大型的业务集群,每个小型的业务,比如用户系统,访问压力大的时候一台服务器不够,就将用户系统部署在多个服务器,将每一个业务系统集群化

总结:分布式中的每一个节点都可叫做集群,而集群不一定是分布式

三、分布式微服务技术概述

2.1 对于一个大型分布式微服务架构需要解决的大概问题

  1. 服务注册与发现
  2. 服务调用:在分布式系统中,各个服务可能处于不同主机,但是服务之间不可避免的相互调用,我们成为远程调用;springcloud中使用HTTP+JSON的方式完成远程调用
  3. 服务熔断
  4. 负责均衡
  5. 服务降级
  6. 服务消息队列
  7. 配置中心管理
  8. 服务网关
  9. 服务监控
  10. 全链路追踪技术
  11. 自动化部署技术
  12. 定时任务调度操作

2.2 大型微服务架构案例

2.3 微服务架构流程

2.4 技术版本选型

4.1、Spring boot版本更新是以数组为版本号如Spring boot 2.x.x;而Spring Cloud是以字母为版本号如Spring Cloud Hoxton

4.2 、使用Spring boot开发单体项目自己选择适当版本即可,但是对于分布式微服务项目,整体是基于Spring Cloud建设的,所以要根据Spring Cloud来选择Spring boot版本,Springboot和cloud版本依赖关系在官网就可以看到Spring | Home

更加详细的技术选型版本介绍地址https://start.spring.io/actuator/info

2.5 Spring Cloud相关技术停更及替换

技术

(快)停更/不维护

替代技术

备注

服务注册中心

Eureka

Zookeeper、Consul、Nacos

推荐使用Nacos(特别是百万级项目)

服务调用

feign(闭源)

OpenFeign已替换Feign

负载均衡

Ribbon(快要停更)、

LoadBalancer替换Ribbon、

服务降级

Hystrix(官网停更不推荐使用 但是国内使用多)

resilience4j(国外推荐使用) 、sentinel(阿里)

推荐sentinel

服务网关

Zuul

gateway

服务配置

config

Nacos(阿里巴巴 )、apollo

推荐Nacos

服务总线

bus

Nacos(阿里巴巴 )、apollo

推荐Nacos

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序三两行

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值