pom.xml

<?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.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><parent><artifactId>dym_cloud2021</artifactId><groupId>com.atguigu.springcloud</groupId><version>1.0-SNAPSHOT</version></parent><modelVersion>4.0.0</modelVersion><artifactId>cloud-provider-hystrix-payment8001</artifactId><dependencies><!--hystrix--><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-netflix-hystrix</artifactId></dependency><!--eureka client--><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-netflix-eureka-client</artifactId></dependency><!--web--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-actuator</artifactId></dependency><dependency><!-- 引入自己定义的api通用包,可以使用Payment支付Entity --><groupId>com.atguigu.springcloud</groupId><artifactId>cloud-api-commons</artifactId><version>${project.version}</version></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-devtools</artifactId><scope>runtime</scope><optional>true</optional></dependency><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><optional>true</optional></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope></dependency></dependencies></project>

application.yml

server:port: 8001spring:application:name: cloud-provider-hystrix-paymenteureka:client:register-with-eureka: truefetch-registry: trueservice-url:#defaultZone: http://eureka7001.com:7001/eureka,http://eureka7002.com:7002/eurekadefaultZone: http://localhost:7001/eureka

PaymentHystrixMain8001.java

package com.dym.springcloud;import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.netflix.eureka.EnableEurekaClient;@SpringBootApplication
@EnableEurekaClient
public class PaymentHystrixMain8001 {public static void main(String[] args) {SpringApplication.run(PaymentHystrixMain8001.class, args);}}

PaymentService.java

package com.dym.springcloud.service;import org.springframework.stereotype.Service;import java.util.concurrent.TimeUnit;@Service
public class PaymentService {/*** 正常访问,肯定OK*/public String paymentInfo_OK(Integer id) {return "线程池:  " + Thread.currentThread().getName() + "  paymentInfo_OK,id:  " + id + "\t" + "O(∩_∩)O哈哈~";}public String paymentInfo_TimeOut(Integer id) {int timeNumber=3;try {TimeUnit.MILLISECONDS.sleep(3000);} catch (InterruptedException e) {e.printStackTrace();}return "线程池:  " + Thread.currentThread().getName() + " id:  " + id + "\t" + "O(∩_∩)O哈哈~" + "  耗时(秒): "+timeNumber;}}

PaymentController.java

package com.dym.springcloud.controller;import com.dym.springcloud.service.PaymentService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RestController;import javax.annotation.Resource;@RestController
@Slf4j
public class PaymentController
{@Resourceprivate PaymentService paymentService;@Value("${server.port}")private String serverPort;@GetMapping("/payment/hystrix/ok/{id}")public String paymentInfo_OK(@PathVariable("id") Integer id){String result = paymentService.paymentInfo_OK(id);log.info("*****result: "+result);return result;}@GetMapping("/payment/hystrix/timeout/{id}")public String paymentInfo_TimeOut(@PathVariable("id") Integer id){String result = paymentService.paymentInfo_TimeOut(id);log.info("*****result: "+result);return result;}}

Hystrix 熔断器02 —— hystrix 案例之构建相关推荐

  1. Hystrix 熔断器02 —— hystrix 案例之高并发测试

    下载地址    https://jmeter.apache.org/download_jmeter.cgi pom.xml <?xml version="1.0" encod ...

  2. Hystrix 熔断器03 —— hystrix 案例之高并发测试案例的解决方案

  3. SpringCloud Hystrix熔断器

    SpringCloud Hystrix熔断器 15.Hystrix熔断器:简介及作用 目标:理解Hystrix的作用 介绍:Hystrix,英文意思是豪猪,全身是刺,看起来就不好惹,是一种保护机制. ...

  4. hystrix 熔断器

    源码: https://gitee.com/GXQ205153964/Hystrix-parent.git Hystrix概述: hystrix是Netflix开源的一个延迟和容错库,用于隔离访问远程 ...

  5. 一文带你了解Ribbon负载均衡和Hystrix熔断器

    文章目录 1. Ribbon负载均衡 1.1 关于负载均衡 1.2 Ribbon高级应用 1.3 Ribbon负载均衡策略 1.4 Ribbon核心源码剖析 2. Hystrix熔断器 2.1 微服务 ...

  6. Ribbon 负载均衡 和 Hystrix熔断器

    1 Ribbon负载均衡 1.1 关于负载均衡 负载均衡一般分为服务器端负载均衡和客户端负载均衡 所谓服务器端负载均衡,比如Nginx.F5这些,请求到达服务器之后由这些负载均衡器根据一定的算法将请求 ...

  7. 学习笔记Hystrix熔断器

    Hystrix原理 背景 分布式系统环境下,服务间类似依赖非常常见,一个业务调用通常依赖多个基础服务.如下图,对于同步调用,当库存服务不可用时,商品服务请求线程被阻塞,当有大批量请求调用库存服务时,最 ...

  8. Spring Cloud 集成 Hystrix 熔断器

    文章目录 Hystrix 熔断器 Hystrix 概述 Hystrix 降级 服务提供方 步骤 pom.xml(依赖) GoodsController.java(包含降级方法) 启动类(@Enable ...

  9. spring cloud 熔断_Spring Cloud 熔断器/断路器 Hystrix

    在微服务架构中,业务会被拆分成一个个服务,服务间可以彼此调用.为了保证服务的高可用性,单个服务通常会被集群部署,但是由于网络等原因,服务并不能保证100%可用.如果某个服务出现了问题,那么调用这个服务 ...

最新文章

  1. 看微软如何发展 Windows 下一代系统
  2. XML学习笔记01【xml_基础、xml_约束】
  3. 将图片序列化和反序列化
  4. RC电路输出波形的时域与频域分析
  5. mysql clickhouse_通过mysql操作clickhouse
  6. 软考信息系统项目管理师_项目范围管理1---软考高级之信息系统项目管理师011
  7. iTerm2 + oh my zsh +agnoster 打造最强Mac终端
  8. 更新智能开发研发进度
  9. 《深入理解计算机系统》家庭作业
  10. 这也许是你不曾留意过的 Mybatis 细节 1
  11. C# 自定义网格 dataGridView 初始化 修改数据
  12. 华为盒子 原生android,华为悦盒/各种安卓盒子找回原生设置以及适配蓝牙遥控器...
  13. xss--跨站脚本攻击
  14. 阿里云云计算ACP学习(一)---弹性计算
  15. 前端实现antd文本域限制字数
  16. 关于爱情和婚姻的见解
  17. 从古代遗传下来的设计值得一看!
  18. Java并发25 ThreadFactory使用的必要性
  19. 疯狂管道鸟--纯JS小游戏
  20. TNS-12547和TNS-12555错误解决

热门文章

  1. 用C#二次封装虹软arcface
  2. sql order by+字段,指定按照哪个字段来排序
  3. Nginx之让用户通过用户名密码认证访问web站点
  4. 实现一个队列类,该类用两个栈来实现
  5. C#后台线程和UI的交互
  6. 理解 Android Build 系统
  7. Java Socket实战之三:传输对象
  8. 【java】java获取对象属性类型、属性名称、属性值
  9. 码教授告诉你面试不要骄傲自负,也不妄自菲薄
  10. c#获取电脑硬件信息参数说明(硬盘篇 Win32_DiskDrive)