SpringCloud
文章平均质量分 82
springcloud
Mr-X~
持续学习,不断进步!
展开
-
SpringCloud的Config配置中心,为什么要分Server服务端和Client客户端?
它的思想是所有微服务的配置文件都放到git远程服务器上,让Server服务端对接git访问配置文件,让Client客户端对接Server服务端访问配置文件,为什么要中间加一层server呢?直接让client客户端访问git远程服务器中的配置文件不可以吗?但是如果是使用server对接git远程仓库,那么远程仓库的配置发生改变之后,server服务端会立马的检测到;而client客户端又是对接的server服务器端,因此也就相当于是当远程服务器里面的配置发生改变之后客户端微服务会立马检测到。原创 2024-05-22 12:11:18 · 489 阅读 · 0 评论 -
SpringCloud微服务调用的超时机制和CompletableFuture异步调用的超时机制原理一样吗?
如果主任务没有在规定的时间内完成,定时任务就会触发并执行一个操作,这个操作会中断正在执行的异步任务,并且将异常 TimeoutException 传递给后续的操作。使用SpringCloud的OpenFeign进行微服务调用的时候,如果A微服务去调用B服务的方法,1s内没有返回结果,就相当于超时了,A微服务会抛出异常。而当我们使用CompletableFuture异步执行方法的时候,也可以设置最大的等待时间,比如说设置2s,那么当前方法在2s内如果没有接收到异步方法的返回结果的话,就会抛出异常。原创 2024-05-22 10:23:52 · 476 阅读 · 0 评论 -
SpringCloud微服务之间可以相互调用的底层原理
综上所述,Spring Cloud微服务调用底层主要是通过HTTP或HTTPS协议进行的,这是因为HTTP协议具有通用性、灵活性和成熟度高等优点。尽管相对于TCP协议来说,HTTP的效率可能稍低,但在大多数应用场景下,这种效率差异是可以忽略不计的,特别是在没有极高并发要求的情况下。一种是通过OpenFeign调用。SpringCLoud中的一个微服务调用另外一个微服务时,底层其实是在当前微服务当中发送了一个http网络请求,这个请求可以访问到另外一个微服务的某个方法。原创 2024-05-22 10:11:23 · 371 阅读 · 0 评论 -
Ribbon负载均衡(自己总结的)
其实不是的,我们的多个请求来了还是给一个Eureka-Server服务器,但是我们会把这些请求分发给一个spring.application.name微服务大类里面的多个instance-id微服务实例,以减轻多个请求如果都给同一个instance-id微服务实例造成的负担。因为我们idea里面的每个微服务模块在注册到Eureka注册中心的时候,spring.application.name微服务的名字,也就是serviceid是可以一样的,但是每个微服务的instace-id实例id是不可以一样的。原创 2024-05-21 17:27:49 · 890 阅读 · 0 评论 -
Eureka服务注册与发现中心
我们在一个项目中通常会有各种各样的模块服务,比如说在一个电商项目中可能会有订单模块服务、付款模块服务、发货模块服务,实际项目中的每个模块服务在Eureka服务注册与发现中心都是对应client客户端;而对于Eureka服务注册与发现中心的server服务端,可以理解成是一个独立于项目之外的一个管理中心,这个管理中心不属于我们的项目模块,但它可以用来管理我们实际的项目中的各个模块之间的微服务。原创 2024-05-21 12:34:12 · 1140 阅读 · 0 评论 -
SpringCloud Config分布式配置中心
文章目录SpringCloud Config分布式配置中心总体思维导图大体概述Config配置中心总控中心搭建什么叫做总控中心?在码云上新建仓库在本地idea里面创建一个springcloud-config项目和码云中的仓库联系起来新建Module模块也就是配置中心的服务端cloud-config-center-3344POMYML主启动类Windows下修改hosts文件,增加映射启动类启动错误测试配置读取规则Config客户端配置与测试新建cloud-config-client-3355模块POMboo原创 2021-10-10 20:07:17 · 339 阅读 · 1 评论 -
Gateway新一代网关
文章目录Gateway新一代网关整体思维导图Gateway基本概念Gateway三大核心概念Route(路由)Predicate(断言)Filter(过滤)总体Gateway工作流程Gateway9527搭建新建ModulePOMYML业务类主启动类YML新增网关配置测试通过配置类的形式配置网关的路由通过微服务名实现动态路由(负载均衡式的路由转发)Predicate的使用Predicate断言的概念After Route Predicate断言的使用Cookie Route Predicate断言的使用Ga原创 2021-10-05 17:40:00 · 2437 阅读 · 2 评论 -
Hystrix断路器
文章目录Hystrix断路器整体思维导图服务雪崩概述Hystrix是什么hystrix案例Hystrix支付微服务的构建新建cloud-provider-hystrix-payment8001POMYML主启动业务类正常测试高并发测试消费者80服务新建cloud-consumer-feign-hystrix-order80POMYML主启动业务类正常测试高并发测试上诉高并发测试异常结论如何解决?解决的要求服务降级提供者8001服务先从自身找问题进行fallback服务降级消费者80服务进行fallback服原创 2021-10-03 19:59:07 · 135 阅读 · 0 评论 -
OpenFeign服务接口调用
文章目录OpenFeign服务接口调用总体概括图概述OpenFeign使用步骤新建cloud-consumer-feign-order80POMYML主启动业务类测试相关知识点小总结OpenFeign超时控制什么是OpenFeign超时?服务提供方8001故意写暂停程序服务消费方80添加超时方法PaymentFeignService服务消费方80添加超时方法OrderFeignController测试YML文件里需要开启OpenFeign客户端超时控制设计一个找不到提供者微服务接口的异常OpenFeign日原创 2021-09-29 14:17:58 · 635 阅读 · 1 评论 -
Ribbon负载均衡服务调用
文章目录Ribbon负载均衡服务调用整体概括图概述LB负载均衡(Load Balance)是什么Ribbon负载均衡和Rest调用一句话Ribbon负载均衡概括图eureka自动引入ribbon二说RestTemplateRibbon核心组件IRuleRibbon自带的负载规则如何用我们自定义的负载均衡规则替换默认的轮询的负载均衡规则注意配置细节并加上一个负载均衡的配置类主启动类添加@RibbonClient测试Ribbon负载均衡服务调用整体概括图概述Spring Cloud Ribbon是基于原创 2021-09-28 18:03:41 · 409 阅读 · 0 评论 -
Consul服务注册与发现
文章目录Consul服务注册与发现总概括思维导图Consul简介安装并运行Consul服务提供者新建Module支付服务provider8006POMYML主启动类业务类Controller验证测试服务消费者新建Module消费服务order80POMYML主启动类配置BeanController验证测试访问测试地址Consul服务注册与发现总概括思维导图Consul简介Consul是一套开源的分布式服务发现和配置管理系统,由HashiCorp公司用Go语言开发。提供了微服务系统中的服务治理,配原创 2021-09-28 13:54:18 · 110 阅读 · 0 评论 -
SpringCloud整合Zookeeper代替Eureka
文章目录SpringCloud整合Zookeeper代替Eureka关闭Linux服务器防火墙后启动zookeeper服务器ping一下不同服务器能否正常打通服务提供者新建cloud-provider-payment8004写POM写YML写主启动类Controller启动8004注册进zookeeper验证测试服务消费者新建cloud-consumerzk-order80POMYML主启动业务类验证测试访问测试地址SpringCloud整合Zookeeper代替Eureka关闭Linux服务器防火墙后原创 2021-09-27 18:25:34 · 488 阅读 · 0 评论 -
Eureka服务注册与发现
文章目录Eureka服务注册与发现总体概括思维导图Eureka基础知识什么是服务治理什么是服务注册与发现Eureka两组件单机Eureka构建步骤IDEA生成eurekaServer端服务注册中心建Module写POM写YML主启动测试易错点将之前写的付费模块这个提供者服务模块改一下改POM改YML改主启动类测试将之前写的订单模块这个消费者服务模块改一下改POM改YML改主启动类测试Eureka集群为什么需要使用Eureka集群?集群Eureka构建步骤新建cloud-eureka-server7002改P原创 2021-09-26 14:58:53 · 684 阅读 · 0 评论 -
微服务架构编码构建
文章目录微服务架构编码构建整体轮廓思维导图创建父工程创建项目配置环境修改父工程的pom.xml文件dependencyManagement和dependencies区别Maven项目如何跳过单元测试使用properties标签统一进行jar包版本的管理微服务提供者支付Module模块的创建创建cloud-provider-payment8001支付子模块父工程里面的spring-boot-dependencies依赖往子模块cloud-provider-payment8001里面引入依赖在子模块中写一个ym原创 2021-09-20 13:31:47 · 1228 阅读 · 0 评论 -
SpringCloud基础概念
文章目录SpringCloud基础概念微服务架构与SpringCloud关于Cloud各种组件的停更/升级/替换SpringCloud基础概念微服务架构与SpringCloudSpringCloud这个框架可以把下面的这些东西全部都包起来:服务注册与发现,服务调用,服务熔断,负载均衡,服务降级,服务消息队列,配置中心管理,服务网关,服务监控,全链路追踪,自动化构建部署,服务定时任务调度操作。SpringCloud框架的强大之处,就在于,它这一个框架可以把上面的所有的东西都包起来。SpringCl原创 2021-09-20 10:40:03 · 288 阅读 · 0 评论