
微服务
文章平均质量分 83
java_prinln
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
磁盘使用率检测
shell 磁盘占用率原创 2023-05-08 18:46:34 · 160 阅读 · 0 评论 -
Docker持久化固定容器IP
Docker 容器 IP 固定化原创 2023-05-01 18:05:32 · 4025 阅读 · 1 评论 -
Bridge模式如何配置
Docker 的Bridge 模式分配原创 2023-04-30 08:04:52 · 1100 阅读 · 0 评论 -
CentOS8.x(8.0+)Linux Docker安装
Docker默认连接的国外官方镜像,通常根据网络情况不同,访问时快时慢,大多时候获取速度非常慢,为了提示效率可以自建仓库或者先修改为国内仓库源,提升拉取镜像的速度。Docker可以配置的国内镜像有很多可供选择,例如:Docker中国区官方镜像、阿里云、网易蜂巢、DaoCloud等,这些都是国内比较快的镜像仓库。原创 2023-04-16 16:22:01 · 238 阅读 · 0 评论 -
SpringCloud Alibaba Seata处理分布式事务-微服务(四十)
Test一部分补充原创 2022-05-23 00:37:31 · 197 阅读 · 0 评论 -
SpringCloud Alibaba Seata处理分布式事务-微服务(三十九)
订单/库存/账户业务微服务准备业务需求下订单->减库存->扣余额->改(订单)状态新建订单Order-Moduleseata-order-service2001POM<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instan原创 2022-05-23 00:14:23 · 391 阅读 · 0 评论 -
SpringCloud Alibaba Seata处理分布式事务-微服务(三十八)
订单/库存/账户业务数据库准备以下演示都需要先启动Nacos后启动Seata,保证两个都OKSeata没启动报错no available server to connect分布式事务业务说明业务说明这里我们会创建三个服务,一个订单服务,一个库存服务,一个账户服务。当用户下单时,会在订单服务中创建一个订单,然后通过远程调用库存服务来扣减下单商品的库存,再通过远程调用账户服务来扣减用户账户里面的余额,最后在订单服务中修改订单状态为已完成。该操作跨越三个数据库,有两次远程调用,很明显会有分原创 2022-05-22 16:29:26 · 439 阅读 · 0 评论 -
SpringCloud Alibaba Seata处理分布式事务-微服务(三十七)
Seata-Server安装官网地址下载版本github下载的是seata-server-0.9.0.zip本次截止2020.2月份后续是否升级自己决定seata-server-0.9.0.zip解压到指定目录并 修改conf目录下的file.conf配置文件先备份原始file.conf文件主要修改:自定义事务组名称+事务日志存储模式为db+数据库连接信息file.confservice模块service { vgroup_mapping.my_test_tx_group原创 2022-05-22 16:20:16 · 205 阅读 · 0 评论 -
SpringCloud Alibaba Seata处理分布式事务-微服务(三十六)
分布式事务问题分布式前单机单库没这个问题从1:1 -> 1:N -> N:N分布式之后单体应用被拆分成微服务应用,原来的三个模块被拆分成三个独立的应用,分别使用三个独立的数据源,业务操作需要调用三个服务来完成。此时每个服务内部的数据一致性由本地事务来保证,但是全局的数据一致性问题没法保证。一句话一次业务操作需要跨多个数据源或需要跨多个系统进行远程调用,就会产生分布式事务问题Seata简介是什么Seata是一款开源的分布式事务解决方案,致力于在微服务架构下提供高原创 2022-05-22 16:08:26 · 119 阅读 · 0 评论 -
SpringCloud Alibaba Sentinel实现熔断与限流-微服务(三十五)
规则持久化是什么一旦我们重启应用,sentinel规则将消失,生产环境需要将配置规则进行持久化怎么玩将限流配置规则持久化进Nacos保存,只要刷新8401某个rest地址,sentinel控制台的流控规则就能看到,只要Nacos里面的配置不删除,针对8401上sentinel上的流控规则持续有效步骤修改cloudalibaba-sentinel-service8401POM <!--SpringCloud ailibaba sentinel-datasource-nacos --&原创 2022-05-22 12:00:36 · 127 阅读 · 0 评论 -
SpringCloud Alibaba Sentinel实现熔断与限流-微服务(三十四)
服务熔断功能sentinel整合ribbon+openFeign+fallbackRibbon系列启动nacos和sentinel提供者9003/9004新建cloudalibaba-provider-payment9003/9004两个一样的做法POM <?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="h原创 2022-05-22 11:54:01 · 169 阅读 · 0 评论 -
SpringCloud Alibaba Sentinel实现熔断与限流-微服务(三十三)
@SentinelResource按资源名称限流+后续处理启动Nacos成功http://localhost:8848/nacos/#/login启动Sentinel成功java -jar sentinel-dashboard-1.7.0.jarModulecloudalibaba-sentinel-service8401POM<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://m原创 2022-05-22 11:19:54 · 150 阅读 · 0 评论 -
SpringCloud Alibaba Sentinel实现熔断与限流-微服务(三十二)
热点key限流基本介绍是什么何为热点热点即经常访问的数据,很多时候我们希望统计或者限制某个热点数据中访问频次最高的TopN数据,并对其访问进行限流或者其它操作官网承上启下复习start兜底方法分为系统默认和客户自定义,两种之前的case,限流出问题后,都是用sentinel系统默认的提示:Blocked by Sentinel (flow limiting)我们能不能自定?类似hystrix,某个方法出问题了,就找对应的兜底降级方法?结论从HystrixCommand 到@Senti原创 2022-05-22 10:51:35 · 112 阅读 · 0 评论 -
SpringCloud Alibaba Sentinel实现熔断与限流-微服务(三十一)
降级规则官网基本介绍RT(平均响应时间,秒级)平均响应时间 超出阈值 且 在时间窗口内通过的请求>=5,两个条件同时满足后触发降级窗口期过后关闭断路器RT最大4900(更大的需要通过-Dcsp.sentinel.statistic.max.rt=XXXX才能生效)异常比列(秒级)QPS >= 5 且异常比例(秒级统计)超过阈值时,触发降级;时间窗口结束后,关闭降级异常数(分钟级)异常数(分钟统计)超过阈值时,触发降级;时间窗口结束后,关闭降级进一步说明Sen原创 2022-05-19 19:13:25 · 192 阅读 · 0 评论 -
SpringCloud Alibaba Sentinel实现熔断与限流-微服务(三十)
流控规则基本介绍进一步解释说明流控模式直接(默认)系统默认直接->快速失败配置及说明表示1秒钟内查询1次就是OK,若超过次数1,就直接-快速失败,报默认错误测试快速点击访问http://localhost:8401/testA结果 Blocked by Sentinel (flow limiting)思考???直接调用默认报错信息,技术方面OKbut,是否应该有我们自己的后续处理?类似有个fallback的兜底方法?关联是什么当关联的资源达到阈原创 2022-05-19 18:05:25 · 119 阅读 · 0 评论 -
SpringCloud Alibaba Sentinel实现熔断与限流-微服务(二十九)
Sentinel官网中文是什么一句话解释,之前我们讲解过的Hystrix去哪下github能干嘛怎么玩https://spring-cloud-alibaba-group.github.io/github-pages/greenwich/spring-cloud-alibaba.html#_spring_cloud_alibaba_sentinel服务使用中的各种问题服务雪崩服务降级服务熔断服务限流安装Sentinel控制台sentinel组件由2部分构成原创 2022-05-19 17:43:17 · 112 阅读 · 0 评论 -
SpringCloud Alibaba Nacos服务注册和配置中心-微服务(二十八)
Nacos集群和持久化配置(重要)官网说明官网架构图(写的o(╥﹏╥)o)上图官网翻译,真实情况说明按照上述,我们需要mysql数据库默认Nacos使用嵌入式数据库实现数据的存储。所以,如果启动多个默认配置下的Nacos节点,数据存储是存在一致性问题的。为了解决这个问题,Nacos采用了集中式存储的方式来支持集群化部署,目前只支持MySQL的存储。官网说明重点说明Nacos持久化配置解释Nacos默认自带的是嵌入式数据库derbygithubderby到mysql切原创 2022-05-18 20:30:55 · 150 阅读 · 0 评论 -
SpringCloud Alibaba Nacos服务注册和配置中心-微服务(二十七)
Nacos作为服务配置中心演示Nacos作为配置中心-基础配置cloudalibaba-config-nacos-client3377POM<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaL原创 2022-05-18 18:58:26 · 591 阅读 · 0 评论 -
SpringCloud Alibaba Nacos服务注册和配置中心-微服务(二十六)
Nacos作为服务注册中心演示官网文档基于Nacos的服务提供者新建Modulecloudalibaba-provider-payment9001POM父POM<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:原创 2022-05-18 18:26:03 · 234 阅读 · 0 评论 -
SpringCloud Alibaba Nacos服务注册和配置中心-微服务(二十五)
Nacos简介为什么叫Nacos前四个字母分别为Naming和Configuration的前两个字母,最后的s为Service。是什么一个更易于构建云原生应用的动态服务发现、配置管理和服务管理平台。Nacos: Dynamic Naming and Configuration ServiceNacos就是注册中心 + 配置中心的组合等价于 Nacos = Eureka+Config +Bus能干嘛替代Eureka做服务注册中心替代Config做服务配置中心去哪下github原创 2022-05-02 18:57:52 · 89 阅读 · 0 评论 -
SpringCloud Alibaba 入门简介- 微服务(二十四)
why会出现SpringCloud alibabaNetflix项目进入维护模式Spring Cloud Netflix说明Spring Cloud Netflix Projects Entering Maintenance Mode什么是维护模式将模块置于维护模式,意味着 Spring Cloud 团队将不会再向模块添加新功能。我们将修复 block 级别的 bug 以及安全问题,我们也会考虑并审查社区的小型 pull request。进入维护模式意味着什么呢?进入维护模式意味着原创 2022-05-02 18:39:44 · 80 阅读 · 0 评论 -
SpringCloud Sleuth 分布式请求链路跟踪 - 微服务(二十三)
SpringCloud Sleuth 分布式请求链路跟踪 概述为什么会出现这个技术? 需要解决哪些问题?在微服务框架中,一个由客户端发起的请求在后端系统中会经过多个不同的的服务节点调用来协同产生最后的请求结果,每一个前段请求都会形成一条复杂的分布式服务调用链路,链路中的任何一环出现高延时或错误都会引起整个请求最后的失败。是什么Spring Cloud Sleuth提供了一套完整的服务跟踪的解决方案https://github.com/spring-cloud/spring-cloud-sle原创 2022-05-02 18:24:17 · 133 阅读 · 0 评论 -
SpringCloud Stream 消息驱动- 微服务(二十一)
消息驱动之生产者新建Modulecloud-stream-rabbitmq-provider8801POM <?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http原创 2022-05-01 00:29:00 · 150 阅读 · 0 评论 -
SpringCloud Stream 消息驱动- 微服务(二十)
消息驱动概述是什么屏蔽底层消息中间件的差异,降低切换成本,统一消息的编程模型什么是SpringCloudStream官方定义 Spring Cloud Stream 是一个构建消息驱动微服务的框架。应用程序通过 inputs 或者 outputs 来与 Spring Cloud Stream中binder对象交互。通过我们配置来binding(绑定) ,而 Spring Cloud Stream 的 binder对象负责与消息中间件交互。所以,我们只需要搞清楚如何与 Spring Clou原创 2022-05-01 00:28:10 · 288 阅读 · 0 评论 -
SpringCloud Stream 消息驱动- 微服务(二十二)
分组消费与持久化依照8802,clone出来一份运行8803cloud-stream-rabbitmq-consumer8803POM<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLoca原创 2022-05-01 00:24:31 · 1247 阅读 · 0 评论 -
SpringCloud Bus 消息总线 - 微服务(十九)
SpringCloud Bus 消息总线 概述Spring Cloud Bus 配合 Spring Cloud Config 使用可以实现配置的动态刷新。是什么Bus支持两种消息代理:RabbitMQ 和 Kafka能干嘛Spring Cloud Bus能管理和传播分布式系统间的消息,就像一个分布式执行器,可用于广播状态更改、事件推送等,也可以当作微服务间的通信通道。为何被称为总线什么是总线在微服务架构的系统中,通常会使用轻量级的消息代理来构建一个共用的消息主题,并让系统中所原创 2022-05-01 00:26:53 · 316 阅读 · 0 评论 -
SpringCloud Config 分布式配置中心-微服务(十八)
Config客户端配置与测试新建cloud-config-client-3355POM <?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apac原创 2022-05-01 00:26:43 · 162 阅读 · 0 评论 -
SpringCloud Config 分布式配置中心-微服务(十七)
SpringCloud Config 概述分布式系统面临的—配置问题微服务意味着要将单体应用中的业务拆分成一个个子服务,每个服务的粒度相对较小,因此系统中会出现大量的服务。由于每个服务都需要必要的配置信息才能运行,所以一套集中式的、动态的配置管理设施是必不可少的。SpringCloud提供了ConfigServer来解决这个问题,我们每一个微服务自己带着一个application.yml,上百个配置文件的管理…/(ㄒoㄒ)/~~是什么是什么SpringCloud Config为微服务架原创 2022-05-01 00:26:26 · 295 阅读 · 0 评论 -
Gateway-Filter - 微服务(十六)
Filter的使用是什么路由过滤器可用于修改进入的HTTP请求和返回的HTTP响应,路由过滤器只能指定路由进行使用。Spring Cloud Gateway 内置了多种路由过滤器,他们都由GatewayFilter的工厂类来产生Spring Cloud Gateway的Filter生命周期,Only Twoprepost种类,Only TwoGatewayFilterhttps://cloud.spring.io/spring-cloud-static/spring-cl原创 2022-05-01 00:26:00 · 580 阅读 · 0 评论 -
Gateway网关- 微服务(十五)
通过微服务名实现动态路由默认情况下Gateway会根据注册中心注册的服务列表,以注册中心上微服务名为路径创建动态路由进行转发,从而实现动态路由的功能启动一个eureka7001 + 两个服务提供者8001/8002POM<dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-netflix-eurek原创 2022-05-01 00:25:30 · 2194 阅读 · 0 评论 -
Gateway网关- 微服务(十四)
概述简介官网上一代zuul 1.X当前gateway是什么概述Gateway是在Spring生态系统之上构建的API网关服务,基于Spring 5,Spring Boot 2和 Project Reactor等技术。Gateway旨在提供一种简单而有效的方式来对API进行路由,以及提供一些强大的过滤器功能, 例如:熔断、限流、重试等SpringCloud Gateway 是 Spring Cloud 的一个全新项目,基于 Spring 5.0+Spring Boot 2.0 和 Proje原创 2022-05-01 00:25:13 · 375 阅读 · 0 评论 -
zuul - 微服务(十三)
路由访问映射规则工程microservicecloud-zuul-gateway-9527代理名称YML beforehttp://myzuul.com:9527/cloud-provider-payment/paymentInfo zuul: routes: # 路由映射配置 mypayment.path: /mypayment/** #IE地址栏输入的路径 mypayment.serviceId: cloud-provider-paym原创 2022-05-01 00:25:01 · 185 阅读 · 0 评论 -
zuul路由网关 - 微服务(十二)
概述简介官网资料https://github.com/Netflix/zuul/wiki/Getting-Startedhttps://cloud.spring.io/spring-cloud-static/spring-cloud-netflix/2.2.1.RELEASE/reference/html/#router-and-filter-zuul是什么Zuul是一种提供动态路由、监视、弹性、安全性等功能的边缘服务。Zuul是Netflix出品的一个基于JVM路由和服务端的负载均衡器。原创 2022-04-30 16:50:54 · 138 阅读 · 0 评论 -
Hystrix监控-微服务(十一)
服务监控hystrixDashboard概述除了隔离依赖服务的调用以外,Hystrix还提供了准实时的调用监控(Hystrix Dashboard),Hystrix会持续地记录所有通过Hystrix发起的请求的执行信息,并以统计报表和图形的形式展示给用户,包括每秒执行多少请求多少成功,多少失败等。Netflix通过hystrix-metrics-event-stream项目实现了对以上指标的监控。Spring Cloud也提供了Hystrix Dashboard的整合,对监控内容转化成可视化界面原创 2022-04-30 16:37:25 · 277 阅读 · 0 评论 -
Hystrix服务降级、熔断-微服务(十)
服务降级降级配置@HystrixCommand8001先从自身找问题设置自身调用超时时间的峰值,峰值内可以正常运行,超过了需要有兜底的方法处理,作服务降级fallback8001fallback业务类启用 package com.atguigu.springcloud.service;import com.netflix.hystrix.contrib.javanica.annotation.HystrixCommand;import com.netflix.hystrix.原创 2022-04-30 16:21:51 · 223 阅读 · 0 评论 -
Hystrix断路器-微服务(九)
Hystrix概述分布式系统面临的问题复杂分布式体系结构中的应用程序有数十个依赖关系,每个依赖关系在某些时候将不可避免地失败。服务雪崩多个微服务之间调用的时候,假设微服务A调用微服务B和微服务C,微服务B和微服务C又调用其它的微服务,这就是所谓的“扇出”。如果扇出的链路上某个微服务的调用响应时间过长或者不可用,对微服务A的调用就会占用越来越多的系统资源,进而引起系统崩溃,所谓的“雪崩效应”.对于高流量的应用来说,单一的后端依赖可能会导致所有服务器上的所有资源都在几秒钟内饱和。比失败更糟糕的是,原创 2022-04-30 15:19:01 · 187 阅读 · 0 评论 -
OpenFeign服务-微服务(八)
概述OpenFeign是什么Feign是一个声明式的Web服务客户端,让编写Web服务客户端变得非常容易,只需创建一个接口并在接口上添加注解即可GitHub能干嘛Feign能干什么Feign旨在使编写Java Http客户端变得更容易。前面在使用Ribbon+RestTemplate时,利用RestTemplate对http请求的封装处理,形成了一套模版化的调用方法。但是在实际开发中,由于对服务依赖的调用可能不止一处,往往一个接口会被多处调用,所以通常都会针对每个微服务自行封装一些客户原创 2022-04-30 14:35:25 · 183 阅读 · 0 评论 -
Ribbon负载均衡-微服务(七)
概述是什么Spring Cloud Ribbon是基于Netflix Ribbon实现的一套客户端 负载均衡的工具。简单的说,Ribbon是Netflix发布的开源项目,主要功能是提供客户端的软件负载 均衡算法和服 务调用。Ribbon客户端组件提供一系列完善的配置项如连接超时,重试等。简单的说,就是在配置文件中列出Load Balancer(简称LB)后面所有的机器,Ribbon会自动的帮助你基于某种规则(如简单轮询,随机连接等)去连接这些机器。我们很容易使用Ribbon实现自定义的负载均原创 2022-04-30 12:48:05 · 160 阅读 · 0 评论 -
Consul - 微服务(六)
Consul简介是什么ConsulConsul 是一套开源的分布式服务发现和配置管理系统,由 HashiCorp 公司用 Go 语言开发。提供了微服务系统中的服务治理、配置中心、控制总线等功能。这些功能中的每一个都可以根据需要单独使用,也可以一起使用以构建全方位的服务网格,总之Consul提供了一种完整的服务网格解决方案。它具有很多优点。包括: 基于 raft 协议,比较简洁; 支持健康检查, 同时支持 HTTP 和 DNS 协议 支持跨数据中心的 WAN 集群 提供图形界面 跨平台,支持 Li原创 2022-04-30 11:21:41 · 342 阅读 · 0 评论 -
Zookeeper服务- 微服务(五)
Zookeeper服务注册与发现Eureka停止更新了你怎么办https://github.com/Netflix/eureka/wikiSpringCloud整合Zookeeper代替Eureka注册中心Zookeeperzookeeper是一个分布式协调工具,可以实现注册中心功能关闭Linux服务器防火墙后启动zookeeper服务器zookeeper服务器取代Eureka服务器,zk作为服务注册中心服务提供者新建cloud-provider-payment8004POM&l原创 2022-04-30 10:54:50 · 368 阅读 · 0 评论