springcloud-alibaba
文章平均质量分 60
听源哥的歌
这个作者很懒,什么都没留下…
展开
-
SpringCloudAlibaba微服务一站式解决方案-09热点规则
一、热点规则热点参数流控是一种更为细粒度的流控规则,它允许将规则具体到参数上。热点规则简单使用1、新建Controllerpackage com.chenchen.controller;import com.alibaba.csp.sentinel.annotation.SentinelResource;import com.chenchen.entity.User;import com.chenchen.service.impl.OrderServiceImpl3;import lomb原创 2021-05-22 15:40:20 · 177 阅读 · 0 评论 -
SpringCloudAlibaba微服务一站式解决方案-08Sentinel之降级规则
一、Sentinel容错降级规则降级规则就是设置当满足什么条件的时候,对服务进行降级。Sentinel提供了三个降级的衡量条件1、平均响应时间: 当资源的平均响应时间超过阈值(以ms为单位),资源进入准降级状态,如果接下来1s内持续进入5个请求,他们的RT都持续超过这个阈值,那么接下来的时间窗口(以s为单位)之内,就会对这个方法进行服务降级。(Sentinel默认统计的RT上限是4900ms,超出此阈值的都会算作4900ms,若需要变更此上限可以通过启动配置项-Dcsp.sentinel.sta原创 2021-05-22 15:12:37 · 136 阅读 · 0 评论 -
SpringCloudAlibaba微服务一站式解决方案-07Sentinel之流控模式、流控效果
一、Sentinel规则1 、流控规则流控规则就是监控应用流量QPS(每秒查询率)或并发线程数等指标,当达到指定的阈值时对流量进行控制,以避免被瞬时的流量高峰冲垮,从而保证应用的高可用性2、使用步骤点击簇点链路,看到访问过的接口地址,点击对应的流控按钮,进入流控规则配置页面。2.1 名称解释1、资源名:唯一名称,默认是请求路径,可以自定义,一般请求下保存默认即可2、针对来源:指定对那个微服务进行限流,默认default,不区分来源,全部限制。3、阈值类型/单机阈值* QPS(每秒请原创 2021-05-20 20:09:31 · 186 阅读 · 0 评论 -
SpringCloudAlibaba微服务一站式解决方案-06Sentinel
针对上述出现的问题,市面上有了 对应的解决方案。如Hystrix、Resilience4j、Sentinel。一、Sentinel1、什么是Sentinel? Sentinel(分布式系统的流量防卫兵)是阿里开源的一套服务容错的综合性解决方案,以流量为切入点, 从流量控制、熔断降级、系统负载保护等多个维度来保护服务的稳定性。 特点: 1、应用场景丰富:消息削峰填谷、集群流量控制、实施熔断下游不可用服务、突发流量控制等 2、实时监控:通过控制台查看接入应用的单台机器秒级数据。 3、开源生原创 2021-05-19 19:37:07 · 105 阅读 · 0 评论 -
SpringCloudAlibaba微服务一站式解决方案-05服务容错
一、服务容错1、高并发带来的问题现在我们有了订单微服务、商品微服务、用户微服务,服务与服务之间可以相互调用,但是由于网络或者自身原因,微服务不能保证100%都是可用,如果其中一个服务出现问题,那么调用它的服务就会出现网络延迟,此时如果有大量网络涌入,会形成任务堆积,最终导致服务瘫痪。如图所示,serviceB出现故障,此时serviceA中的a1()方法去调用b1()方法,得不到响应信息,一直调用,如果按照tomcat最大线程数400来说,那么service中a1()方法一直拿到400位置,如果原创 2021-05-17 21:33:28 · 170 阅读 · 0 评论 -
SpringCloudAlibaba微服务一站式解决方案-04FeignClients
//下单,使用rebbion组件实现负载均衡。 @RequestMapping("/createOrder/{pid}") public Order createOrder(@PathVariable Integer pid) { //使用微服务的名字,从注册中心Nacos中获取 String url = "service-product2021"; Product product = restTemplate.getForObjec原创 2021-05-16 15:51:01 · 238 阅读 · 0 评论 -
SpringCloudAlibaba微服务一站式解决方案-03负载均衡
上回说到了商品微服务可以从注册中心拿到商品微服务的信息,进行下单操作.请看下面的代码 //获取商品微服务集合和信息 List<ServiceInstance> instances = discoveryClient.getInstances("service-product2021"); //获取第一个实例 ServiceInstance serviceInstance = instances.get(0); //host ip原创 2021-05-13 22:48:43 · 254 阅读 · 1 评论 -
SpringCloudAlibaba微服务一站式解决方案-00微服务起源
所谓微服务泛指由原来的大型系统,拆分成一个个独立的小系统,而且独立部署、独立运行,而我们所要关注的是 服务是如何注册的,服务与服务之间如何调用的,服务之间的事务如何处理的,面对并发访问时如何限流、熔断的,以及如何负载均衡的,微服务时代1、系统架构演变:从互联网兴起到目前为止,系统架构大致经历了几个过程:单体应用>垂直应用>分布式架构>SOA架构>到了目前很火的微服务。1.1 单体应用架构 优点:1、架构简单。 2、相对于小型项目,开发简单、易于维护 3、服务部署在一原创 2021-05-12 10:48:01 · 199 阅读 · 1 评论 -
SpringCloudAlibaba微服务一站式解决方案-02服务治理
一、前面说到订单微服务和商品微服务都已正常跑通,但是不完整,会有问题。如 String url="http://localhost:8081/findProductById/"; Product product = restTemplate.getForObject(url+pid, Product.class);下订单产生的问题1、如果服务提供者(商品微服务)地址信息变化了,此时调用方(订单微服务)不得不去修改源代码。2、或者说服务提供者(商品微服务)做了集群,那么调用者(订单原创 2021-05-13 21:37:43 · 163 阅读 · 0 评论 -
SpringCloudAlibaba微服务一站式解决方案-01服务调用
一、SpringCloudAlibaba介绍1、SpringCloudAlibaba致力于提供微服务开发的一站式解决方案,此项目包含分布式应用微服务的必须组件,方便开发者通过SpringCloud编程模型轻松使用这些组件来开发分布式应用服务。开发者只需要添加一些注解和少量配置,就可以将SpringCloud应用接入阿里微服务解决方案,通过阿里中间件迅速搭建分布式应用系统。2、主要功能1、==服务限流降级==:默认支持WebServlet、WebFlux、OpenFeign、RestTemplate、原创 2021-05-13 21:36:56 · 275 阅读 · 0 评论