Spring Hystrix熔斷報警原理圖例解析
Hystrix 是一個幫助解決分布式系統(tǒng)交互時超時處理和容錯的類庫, 它同樣擁有保護(hù)系統(tǒng)的能力。Netflix的眾多開源項目之一。
設(shè)計流程:
1.加入Redis依賴
<!--springboot整合redis--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId> </dependency>
2.配置Redis信息:
spring: application: name: order-service redis: database: 0 host: 127.0.0.1 port: 6379 timeout: 2000
3.
//注意:方法名稱一定要與api方法一致 private Object saveOrderFail(Integer userId,Integer productId){ String saveOrderKey = "save-order"; String sendValue = (String) redisTemplate.opsForValue().get(saveOrderKey); new Thread( () ->{ if (StringUtils.isBlank(sendValue)){ //發(fā)送一個http請求,請求短信服務(wù) redisTemplate.opsForValue().set(saveOrderKey,"save-order-fail",20, TimeUnit.SECONDS); } }).start(); Map<String, Object> msg= new HashMap<>(); msg.put("code",-1); msg.put("msg","搶購人數(shù)太多,請稍后再試"); return msg; }
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
java多線程返回值使用示例(callable與futuretask)
這篇文章主要介紹了多線程返回值使用示例(callable與futuretask),需要的朋友可以參考下2014-04-04Java解析Excel文件并把數(shù)據(jù)存入數(shù)據(jù)庫
本篇文章主要介紹了Java解析Excel文件并把數(shù)據(jù)存入數(shù)據(jù)庫 ,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-05-05SpringBoot集成swagger-ui以及swagger分組顯示操作
這篇文章主要介紹了SpringBoot集成swagger-ui以及swagger分組顯示操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-09-09JavaAgent實現(xiàn)http接口發(fā)布方式淺析
這篇文章主要介紹了JavaAgent實現(xiàn)http接口發(fā)布方式,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)吧2023-03-03SpringBoot使用Shiro實現(xiàn)動態(tài)加載權(quán)限詳解流程
本文小編將基于?SpringBoot?集成?Shiro?實現(xiàn)動態(tài)uri權(quán)限,由前端vue在頁面配置uri,Java后端動態(tài)刷新權(quán)限,不用重啟項目,以及在頁面分配給用戶?角色?、?按鈕?、uri?權(quán)限后,后端動態(tài)分配權(quán)限,用戶無需在頁面重新登錄才能獲取最新權(quán)限,一切權(quán)限動態(tài)加載,靈活配置2022-07-07SpringCloud Config連接git與數(shù)據(jù)庫流程分析講解
springcloud config是一個解決分布式系統(tǒng)的配置管理方案。它包含了 client和server兩個部分,server端提供配置文件的存儲、以接口的形式將配置文件的內(nèi)容提供出去,client端通過接口獲取數(shù)據(jù)、并依據(jù)此數(shù)據(jù)初始化自己的應(yīng)用2022-12-12