Ribbon
SpringCloudNetflix系统下,RestTemplate实现有一个别名叫Ribbon,如果说"Ribbon"调用,指的就是RestTemplate对象的调用过程默认的序列化方式为JDK设计模式:模板方法模式
// 装配能执行RestTemplate方法调用的对象
@Autowired
private RestTemplate restTemplate;
@PostMapping("/delete")
@ApiOperation("删除购物车中商品")
@ApiImplicitParams({
@ApiImplicitParam(value = "用户ID",name="userId",example = "UU100"),
@ApiImplicitParam(value = "商品编号",name="commodityCode",example = "PC100")
})
public JsonResult deleteUserCart(String userId,String commodityCode){
cartService.deleteUserCart(userId,commodityCode);
// RestTemplate调用减少库存的方法
// 我们设计删除购物车后减少库存,要调用RestTemplate首先确定url
String url="http://localhost:20003/base/stock/reduce/count?"+
"commodityCode={1}&reduceCount={2}";
// 执行发起调用
// getForObject方法参数和返回值的解释
// 返回值:根据调用的控制器方法的实际返回值给定返回类型即可
// 参数分为3部分
// 1.第一个参数:就是请求的url,指定路径即可
// 2.第二个参数:就是返回值类型的反射,根据要求编写在参数位置即可
// 3.从第三个参数开始:往后的每个参数都是在给url路径中的{x}占位符赋值
// 第三个参数赋值给{1} 第四个参数赋值给{2},....以此类推
JsonResult jsonResult = restTemplate.getForObject(
url, JsonResult.class, commodityCode, 5);
System.out.println(jsonResult);
return JsonResult.ok("删除购物车完成!");
web服务器
网关Gateway项目使用Netty服务器,Netty服务器内部是NIO的所以性能更好下图以Tomcat为例,解释请求响应流程 Tomcat缺点 常规情况下,一个tomcat并发数在100多一点 一般情况下,一个网站要1000人在线,并发数是2%-5%也就是20~50并发 如果需要一个支持更高并发的服务器,就是需要使用Nginx
相关阅读
发表评论