现有的服务架构,是基于consul、springcloud gateway的一套微服务架构,近期公司也是打算把所有的系统都迁移到servicemesh上,所以我们系统涉及到一次架构变更。
变更的内容如下
//@FeignClient(name = "pcms-uniquerypolicy", path = "pcms/uniquery/policyapp/rest")
//@FeignClient(name = "pcms-uniquerypolicy", url = "http://localhost:19001/pcms/uniquerypolicy/policyapp/rest")
//@FeignClient(name = "pcms-uniquerypolicy", path = "pcms/uniquerypolicy/policyapp/rest")
//@FeignClient(name = "pcms-uniquerypolicy",path = "http://10.30.59.14:9002/pcms/uniquerypolicy")
//@FeignClient(name = "testClient",path = "http://10.30.59.14:9002/pcms/uniquerypolicy/policyapp/rest")
//@FeignClient(value = "testClient",path = "http://10.30.59.14:9002/pcms/uniquerypolicy/policyapp/rest")
@FeignClient(name = "pcms-uniquerypolicy",url = "http://localhost:19001/pcms/uniquerypolicy/policyapp/rest")
public interface PolicyCbpsApi {
@RequestLine(value = "POST /stdContract/getStdContractBOList")
List<StdContractBO> getStdContractBOList(
@Param(value = "stdContractQRY") StdContractQRY stdContractQRY, @Param(value = "routeInfo") RouteInfo route);
}
//@FeignClient(name = "pcms-uniquery-gateway")
@FeignClient(name = "pcms-uniquery-gateway",url="http://localhost:19001")
public interface CpnstApi {
/**
* @throws
* @Title: getCpnstApplList
* @param: @param appl
* @param: @param sysNo
* @param: @param branchNo
* @param: @return
* @return: List<CpnstApplPO>
*/
@RequestMapping(value = ConstUtil.CONTEXT_PATH+"/cpnstAppl/getCpnstApplList", method = RequestMethod.POST, produces = "application/json; charset=utf-8")
List<CpnstApplPO> getCpnstApplList(@RequestBody CpnstApplQRY appl, @PathVariable(value = "sysNo") String sysNo, @PathVariable(value = "branchNo") String branchNo);
}
public class ConstUtil {
private ConstUtil(){}
// public static final String CONTEXT_PATH="/pcms-uniquery{sysNo}{branchNo}/pcms/uniquery/{sysNo}-{branchNo}/daoapp/rest";
public static final String CONTEXT_PATH="/pcms/uniquery{sysNo}{branchNo}/{sysNo}-{branchNo}/daoapp/rest";
public static final String EXT_FLAG = "1"; // 附加险标识
}
- 之前用的FeignClient中的path匹配,path=contextPath+server.servlet.path,用于定义当前FeignClient的统一前缀
- 现在改为url,官方文档里面url的解释是 an absolute URL or resolvable hostname,绝对路径的url或者可解析的主机名。localhost:19001,网格中的默认端口,而后面两段定义的是rancher里面服务的系统名+service_name,最后两段是server.servlet.path