流量分发策略
流量分发策略:通俗讲使相同的商品id固定的请求到某一个nginx缓存上,提高缓存命中率。
- 基于上一篇,在
eshop-cache02
和eshop-cache03
部署OpenResty
- 用
eshop-cache01
和eshop-cache02
作为应用层nginx服务器
; - 用
eshop-cache03
作为分发层nginx
;
- 在
eshop-cache03
,也就是分发层nginx
中,编写lua脚本,完成基于商品id的流量分发策略。
简化策略,简化业务逻辑,实际上根据自己的业务逻辑和场景,去制定自己的流量分发策略。
设计思路
- 获取请求参数,比如
productId
- 对
productId
进行hash
hash值
对应用服务器nginx
数量取模,获取到一个应用服务器- 利用
http发送请求到应用层nginx
- 获取响应后返回
以上就是基于商品id的定向流量分发的策略,lua脚本来编写和实现
实战流程
- 作为
流量分发
的nginx
,会发送http请求
到后端的应用nginx
上面去,所以要先引入lua http lib
包
cd /usr/hello/lualib/resty/
wg