SpringCloud兩種服務降級的方法

2021-09-29 08:45:50 字數 2185 閱讀 5458

1.feign整合hystrix的降級

2.hystrix本身的降級

3.進行熔斷的處理

package com.mcloud.nis.knowledge.feign;

import com.alibaba.fastjson.jsonobject;

import com.mcloud.nis.knowledge.feign.impl.basicsignfallback;

import org.springframework.cloud.openfeign.feignclient;

import org.springframework.web.bind.annotation.requestmethod;

import org.springframework.web.bind.annotation.requestparam;

/** * created by 周建鵬

* $ on 2019/10/18 $ 14:04

* * 呼叫體徵基礎服務資訊

*/第一種:

@feignclient(name = "nis-signs", fallback = basicsignfallback.class) //依賴的服務

public inte***ce basicsignmanager

package com.mcloud.nis.knowledge.feign.impl;

import com.alibaba.fastjson.jsonobject;

import com.mcloud.nis.knowledge.constant.bizerrorcodeenum;

import com.mcloud.nis.knowledge.feign.basicsignmanager;

import com.mcloud.nis.knowledge.service.impl.cataloguelibraryserviceimpl;

import org.slf4j.logger;

import org.slf4j.logge***ctory;

import org.springframework.stereotype.component;

/** * created by 周建鵬

* $ on 2019/11/5 $ 17:55

* * 生命體徵服務降級處理類,一定要實現服務類的介面

* */

@component

public class basicsignfallback implements basicsignmanager ", jsonobject.tojsonstring(organcode));

jsonobject jsonobject = new jsonobject();

jsonobject.put("code", "10001");

jsonobject.put("error", bizerrorcodeenum.no_service);

return jsonobject;

}}第二種:

@apioperation(value = "獲取生命體徵", notes = "獲取生命體徵")

@responsebody

@hystrixcommand(fallbackmethod = "getbasicsignbyerror")

public serviceresult getbasicsign(@requestparam string code) catch (bizexception e)

}//private serviceresult getbasicsignbyerror(string code) ", jsonobject.tojsonstring(code));

jsonobject jsonobject = new jsonobject();

jsonobject.put("code", code);

jsonobject.put("error", bizerrorcodeenum.no_service.getdescription());

return serviceresult.fail(integer.parseint(bizerrorcodeenum.no_service.geterrorcode()), bizerrorcodeenum.no_service.getdescription(), jsonobject);

}

spring cloud的兩種呼叫方式

新建乙個spring cloud專案 引入依賴包 org.springframework.cloud spring cloud starter eureka org.springframework.cloud spring cloud starter ribbon 修改配置檔案 name servi...

兩種服務 2018 5 23

概念 1 startservice intent 通過這種方式開啟的服務,執行的生命週期方法 第一次呼叫startservice的時候 oncreate onstartcommand 再次呼叫startservice的時候 只執行onstartcommand 2 想停止用startservice開啟...

兩種if判斷

上海面試三 下面是c語言中兩種if語句判斷方式。請問哪種寫法更好?為什麼?int a if a1 第一種判斷方式 if 1a 第二判斷方式 答 這是個主觀題,不過多數人認為第二種好。從執行效率上講,第二種效率更高。另外,在編寫 時如果不小心將 寫成 即變成 1 a 這時編譯器將會給出錯誤提示。而如果...