写点什么

一种基于 Nginx 的热点数据调度处理方法

  • 2023-08-11
    北京
  • 本文字数:714 字

    阅读完需:约 2 分钟

本文分享自天翼云开发者社区《一种基于Nginx的热点数据调度处理方法》,作者:康****彬

一、应用场景

    基于 Nginx 的热点数据调度处理,热点节点数据负载均衡处理,减少热点节点压力,提高处理和访问效率;每一个节点的 nginx 服务接收大量的访问,但是每个节点处理请求都有一个峰值,当请求数达到峰值时,后续请求的处理效率就会有一定的下降,为了保证请求能及时处理,热点节点会触发请求调度策略,转发请求到非热点节点进行处理,若无非热点节点,则触发分布式节点策略,备机节点会启动 Nginx 服务处理,并接收热点节点转发过来的请求,从而提升访问及处理效率。

二、解决的问题

    解决大量 http 请求同一个 Nginx 节点繁忙的问题,做到快速响应。 解决 Nginx 集群每个节点超负荷接收请求的问题,自动触发分布式策略处理。 解决现有实现方案可能存在的单点失效、配置不灵活的问题。 

三、部署流程图



1、客户端:用户通过客户端发起 HTTP 请求。

2、Nginx 主机:负责接收客户端 的 HTTP 请求。

3、Nginx 备机:等待被 Agent 唤 醒的空闲 Nginx 节点。

4、Agent 代理主机:负责和 Nginx 节点服务进行交互,包括启动空闲 Nginx 备机、注销 Nginx 节点服务等。

5、Agent 代理备机:作为 Agent 主机的备用机器,Agent 主机宕机的时候,会自动启动备机作为主机,然后发出告警。

6、Redis 缓存:存放策略配置以及主机 IP 访问量等信息。

四、主要流程图



主要流程如下:

 Nginx 服务接收到客户端 HTTP 请求之后,先读取 redis 中该请求 IP 的总访问量,判断如果达到配置策略的峰值,则需要获取峰值策略判断,如果配置的是控制访问策略,则拒绝该 IP 的请求;如果配置的是非热点访问策略,则通知 Agent 转发到非热点 Nginx 节点;如果全部 Nginx 节点都达到峰值,则请求 Agent 发送到备用的 Nginx 节点上。

用户头像

还未添加个人签名 2022-02-22 加入

天翼云是中国电信倾力打造的云服务品牌,致力于成为领先的云计算服务提供商。提供云主机、CDN、云电脑、大数据及AI等全线产品和场景化解决方案。

评论

发布
暂无评论
一种基于Nginx的热点数据调度处理方法_大数据_天翼云开发者社区_InfoQ写作社区