需求:訂單裡呼叫使用者服務,在訂單裡查詢出使用者資訊
order-service和user-service
1.user-service正常提供controller介面
/**根據使用者id查詢使用者資訊
* @param
* @return
*/@apioperation(value = "根據使用者id查詢使用者資訊", notes = "根據使用者id查詢使用者資訊")
public responsedata getuserinfo(@pathvariable("id") long id,@requestparam("usertype") int usertype)
3.order-service裡寫乙個api介面,和user-service裡的controller方法定義一樣@enablediscoveryclient
@enablefeignclients
@componentscan("com.****")
public static void main(string args)
}
4.order-service裡的業務方法,直接引用/**
* 使用者資訊
* @description
* @author guo
* @date 2019-10-31
*/@feignclient(value = "user-service",configuration = feignconfiguration.class)//此處configuration為了服務直接傳遞header,user-service是使用者服務名稱
public inte***ce userservice
# feign和ribbon結合,指定策略。feign預設的是輪詢的策略,這裡的配置可以自定義userservice.getuserinfobyid(1,1);@autowired
private userservice userservice;
user-service
:
ribbon:
nfloadbalancerruleclassname: com.netflix.loadbalancer.randomrule
spring cloud微服務之間的呼叫
springcloud中為了解決服務與服務呼叫的問題,提供了兩種方式。resttemplate和feign。雖然這兩種呼叫的方式不同,但在底層還是和httpclient一樣,採用http的方式進行呼叫的。對httpclient進行的封裝。下面我們來詳細的介紹一下這兩種方式的區別,我們首先看一下res...
SpringCloud 服務之間的呼叫以及負載均衡
服務間的呼叫就是在子模組間的相互呼叫 在auth 模組中 呼叫demo中的有關方法 在demo中建立乙個介面 在auth中,建立乙個resttemplate 物件,呼叫 getforobject http 服務名 路徑 返回的型別,傳遞引數的類或map public string yuancheng...
springcloud 限流 之 微服務之間的呼叫
1.引入sentinel jar包 com.alibaba.csp sentinel annotation aspectj 1.4.1 流量控制 flow control 原理是監控應用流量的qps或併發執行緒數等指標,當達到指定閾值時對流量進行控制,避免系統被瞬時的流量高峰沖垮,保障應用高可用性。...