Zuul —— SpringCloud(七)
2021-02-17 09:19
标签:enable man tca 压力测试 监控 gateway boot 开启 thread Zuul是Netflix开源的微服务网关。 Zuul可以和Eureka、Ribbon、Hystrix等组件配合使用。 Zuul的核心是一系列的过滤器,可以完成以下功能。 身份认证和安全:识别每个资源的验证请求,并拒绝那些与要求不符的请求。 审查与监控:在边缘位置追踪有意义的数据和统计结果,从而带来精确的生产视图。 动态路由:动态地将请求路由到不同的后端集群。 压力测试:逐渐增加指向集群的流量,以了解性能。 负载分配:为每一种负载类型分配对应容量,并弃用超出限定值的请求。 静态响应处理:在边缘位置直接建立部分响应,从而避免其转发到内部集群。 多区域弹性:跨越AWS Region进行请求路由,意图在实现ELB使用的多样化,以及让系统的边缘更加贴近系统的使用者。 SpringCloud对Zuul进行了整合和增强。 目前,Zuul使用的默认HTTP客户端是Apache Http Client,也可以使用RestClient或者okhttp3.0HttpClient。 如果想要使用RestClient,可以设置 ribbon.restclient.enable=true 想要使用okhttp3.0HttpClient,可以设置 ribbon.okhttp.enable=tue 通过 @EnableZuulProxy 注解开启Zuul功能。 映射规则: Zuul中默认就已经继承了Ribbon负载均衡和Hystrix熔断机制。但是所有的超时策略都是默认值。 比如,熔断超时时间只有1s,很容易就被触发了,所以建议手动配置: Zuul —— SpringCloud(七) 标签:enable man tca 压力测试 监控 gateway boot 开启 thread 原文地址:https://www.cnblogs.com/guancangtingbai/p/12698760.html什么是Zuul?
初步使用Zuul
编写配置
server:
port: 10010 #服务端口
spring:
application:
name: api-gateway #指定服务名
编写引导类
@SpringBootApplication
@EnableZuulProxy // 开启网关功能
public class ItcastZuulApplication {
public static void main(String[] args) {
SpringApplication.run(ItcastZuulApplication.class, args);
}
}
编写路由规则
server:
port: 10010 #服务端口
spring:
application:
name: api-gateway #指定服务名
zuul:
routes:
service-provider: # 这里是路由id,随意写
path: /service-provider/** # 这里是映射路径
url: http://127.0.0.1:8081 # 映射路径对应的实际url地址
负载均衡和熔断
hystrix:
command:
default:
execution:
isolation:
thread:
timeoutInMilliseconds: 2000 # 设置hystrix的超时时间为6000ms
上一篇:python字典小例子1
下一篇:Spring常用注解
文章标题:Zuul —— SpringCloud(七)
文章链接:http://soscw.com/index.php/essay/56506.html