正向代理&反向代理
正向代理
(1)访问原来无法访问的资源,如google
(2) 可以做缓存,加速访问资源
(3)对客户端访问授权,上网进行认证
(4)代理可以记录用户访问记录(上网行为管理),对外隐藏用户信息
反向代理
1)保证内网的安全,大型网站,通常将反向代理作为公网访问地址,Web服务器是内网。
(2)负载均衡,通过反向代理服务器来优化网站的负载
nginx支持配置反向代理,通过反向代理实现网站的负载均衡。
基于“分发层+应用层”双层nginx架构提升缓存命中率方案分析
1、缓存命中率低
缓存数据生产服务解决 本地堆缓存+redis分布式缓存。
三级缓存中的nginx缓存:如果部署多个nginx,每个放一些缓存,默认情况下缓存命中率是比较低的。
2、如何提升缓存命中率:分发层+应用层,双层nginx
分发层nginx,负责流量分发的逻辑和策略,自定义规则,如根据keyId去hash,对应用层nginx数量取模。将同类请求,固定路由到应用层nginx上,从redis中获取一次缓存数据,后面全都走nginx本地缓存。
大幅度提升nginx本地缓存的命中率,大幅度减少redis后端的压力,提升性能
步骤:
1、获取请求参数,keyId进行hash
3、hash值对应用服务器数量取模,获取到一个应用服务器nginx
4、利用http发送请求到应用层nginx
5、获取响应后返回