微服务网关技术
微服务网关技术
1)跨域
1.www.jd.com---->www.taobao.com 跨域
2.localhost:8001 --->localhost:8002 跨域
3.www.jd.com:80--->www.jd.com:81 跨域
4.https --->http 跨域。
2)路由过滤
根据请求路径路由到不同微服务去。
3)请求路径过滤
用户请求http://localhost:8001的时候我们让它请求真实地址http://localhost:8001/brand;
用户请求路径是/api/brand,而真实路径是/brand,这时候我们需要去掉/api才是真实路径。
4)客户端负载均衡
并发量较大的时候,我们需要做负载均衡操作。
5)网关限流
当我们的系统 被频繁的请求的时候,就有可能 将系统压垮,所以 为了解决这个问题,需要在每一个微服务中做限流操作,但是如果有了网关,那么就可以在网关系统做限流,因为所有的请求都需要先通过网关系统才能路由到微服务中。
令牌桶算法是比较常见的限流算法之一,大概描述如下:
1。所有的请求在处理之前都需要拿到一个可用的令牌才会被处理;
2。根据限流大小,设置按照一定的速率往桶里添加令牌;
3。桶设置最大的放置令牌限制,当桶满时、新添加的令牌就被丢弃或者拒绝;
4。请求达到后首先要获取令牌桶中的令牌,拿着令牌才可以进行其他的业务逻辑,处理完业务逻辑之后,将令牌直接删除;
5。令牌桶有最低限额,当桶中的令牌达到最低限额的时候,请求处理完之后将不会删除令牌,以此保证足够的限流
6)JWT验证
JSON Web Token(JWT)是一个非常轻巧的规范。
7)UUID
universally unique identifie,全局唯一标识符(UUID)。
本文来自博客园,作者:{咏南中间件},转载请注明原文链接:https://www.cnblogs.com/hnxxcxg/p/16850159.html