当前位置: 首页 > 专利查询>河海大学专利>正文

一种基于Nginx、Redis的高并发负载均衡系统技术方案

技术编号:17350465 阅读:333 留言:0更新日期:2018-02-25 19:27
本发明专利技术公开了一种基于Nginx、Redis的高并发负载均衡系统,以Nginx作为反向代理服务器,对来自多个客户端的高并发请求进行反向代理,分发给不同的Tomcat服务器,使用Redis作为缓存数据库用于保存实时计算的缓存队列和加速数据库查询效率,使用MySQL作为结构化数据库用于存储处理过的数据。本发明专利技术的架构能够将高并发的访问反向代理分发到不同的服务器,达到负载均衡的目的,而Redis缓存数据库能够满足高并发数据实时处理和存储的需求,提高处理速度,降低高并发带来的性能影响,具有很好的实用价值。

A high concurrent load balancing system based on Nginx and Redis

【技术实现步骤摘要】
一种基于Nginx、Redis的高并发负载均衡系统
本专利技术涉及一种负载均衡架构,特别是涉及一种基于Nginx、Redis的高并发负载均衡系统,属于应用程序开发

技术介绍
随着互联网的快速发展,人们上网的方式也变得十分便捷,网络访问的需求也日益增加,对网站服务器造成了很大的压力,而这些网络访问通常要求对数据能够进行实时处理,还要求能够进行后续的处理分析。面对多种设备,多个用户的高并发访问,如何降低服务器的负载,快速响应客户端的请求,对数据进行实时处理并保存,成为一个难题。因此,如何提供一个有效的负载均衡架构是至关重要的。
技术实现思路
专利技术目的:针对多设备高并发访问造成多请求集中在服务器造成负载过重的问题,本专利技术提供一种基于Nginx、Redis的高并发负载均衡系统,将高并发访问进行反向代理,分发到多个Tomcat服务器处理,并将实时数据用Redis进行缓存从而能够方便快速的进行实时处理,然后将处理后的数据保存在MySQL中,从而进行后续的分析处理。技术方案:一种基于Nginx、Redis的高并发负载均衡系统,包括Nginx反向代理服务器、Tomcat服务器、Redis缓存数据库和MySQL数据库。客户端向Nginx反向代理服务器发送请求,Nginx反向代理服务器对这些请求进行分发,转发到Tomcat服务器集群,Tomcat服务器接收请求后,将实时数据发送给Redis数据库,Redis使用缓存队列对实时数据进行缓存,计算程序定时从缓存队列中取出数据进行计算,将处理过的数据转换为结构化数据保存在MySQL中。当Nginx反向代理服务器获得客户端发送的请求时,根据各Tomcat服务器IP配置映射关系,依据IP_HASH策略将来自不同IP的请求分发到相应的Tomcat服务器上。上述高并发负载均衡分布式系统搭建步骤如下:步骤1:搭建Tomcat服务器集群:选择若干台计算机安装Tomcat服务器;步骤2:搭建Nginx服务器:选择一台机器安装Nginx,并且对配置文件进行修改(根据软件运行信息和分发策略IP_HASH修改配置文件),根据各Tomcat服务器IP配置映射关系,当Nginx获得客户端发送的请求时,依据IP_HASH策略将请求分发到相应的服务器上;步骤3:安装Redis数据库,对Redis进行运行及缓存队列的配置,并与Tomcat服务器进行关联;步骤4:安装MySQL数据库,将应用程序部署在Tomcat集群服务器上,确保程序正常运行。有益效果:本专利技术设计的基于Nginx、Redis的高并发负载均衡系统,通过使用Nginx反向代理服务器和Redis缓存数据库来解决高并发访问带来的服务器性能负载问题以及高并发数据实时处理的瓶颈,并使用MySQL保存结构化的数据,满足后续业务操作的需求。附图说明图1为本专利技术的整体架构示意图;图2为本专利技术中Nginx反向代理过程的示意图;图3为本专利技术中实时数据处理过程的示意图。具体实施方式下面结合具体实施例,进一步阐明本专利技术,应理解这些实施例仅用于说明本专利技术而不用于限制本专利技术的范围,在阅读了本专利技术之后,本领域技术人员对本专利技术的各种等价形式的修改均落于本申请所附权利要求所限定的范围。如图1所示,基于Nginx、Redis的高并发负载均衡系统,它包括Nginx反向代理服务器、Tomcat服务器、Redis缓存数据库和MySQL数据库。客户端向Nginx反向代理服务器发送请求,Nginx反向代理服务器对这些请求进行分发,转发到Tomcat服务器集群,Tomcat服务器接收请求后,将实时数据发送给Redis数据库,Redis使用缓存队列对实时数据进行缓存,计算程序定时从缓存队列中取出数据进行计算,将处理过的数据转换为结构化数据保存在MySQL中。上述高并发负载均衡分布式系统搭建步骤如下:步骤1:搭建Tomcat服务器集群:选择若干台计算机安装Tomcat服务器;步骤2:搭建Nginx服务器:选择一台机器安装Nginx,并且对配置文件进行修改,根据各Tomcat服务器IP配置映射关系,当Nginx获得客户端发送的请求时,依据映射关系和调度算法将请求分发到相应的服务器上;步骤3:安装Redis数据库,对Redis进行配置,并与Tomcat服务器进行关联;步骤4:安装MySQL数据库,将应用程序部署在Tomcat集群服务器上,确保程序正常运行。如图2所示,图中给出了一个支持高并发的负载均衡服务器的结构图,在图中有6个客户端、一个Nginx反向代理服务器、3个Tomcat服务器。6个客户端向服务器发送请求,Nginx接收来自客户端的请求后,根据IP_HASH的规则,对6个IP进行分类,然后分发到不同的Tomcat服务器中,因此,每台Tomcat服务器的负载降低,达到高并发的效果,并且提高了访问速度。在图中,A、C客户端访问的是服务器1,B、E访问的是服务器2,但是由于使用反向代理分发请求,对于访问的用户来说,实际体验是一致的。如图3所示,图中给出了支持高并发数据实时处理的过程示意图,图中展示了4个Tomcat服务器向Redis发送来自3个客户端不同时间的数据(即t1、t2、t3时刻的数据,t1<t2<t3),以数据对形式表示,第一个数据表示来自哪个客户端,第二个数据表示时间,如(A,t1)表示来自A客户端t1时刻的数据。Redis数据库以时间为key,将来自不同客户端的同一时刻数据缓存到以时间为key的缓存队列中,计算程序定时从缓存队列中取出最早时间对应的所有数据。如图3所示,Redis将在缓存队列中保存三个时间的数据,计算程序读取数据时,将最早时间的数据也就是t1时刻的两个数据取出,进行运算处理,而此时Redis缓存队列中还保存着t2,t3时刻的数据,等待下一次处理。计算程序将处理后的数据保存在结构化数据库MySQL中,用于进行后续的业务操作。本文档来自技高网...
一种基于Nginx、Redis的高并发负载均衡系统

【技术保护点】
一种基于Nginx、Redis的高并发负载均衡系统,其特征在于:包括Nginx反向代理服务器、Tomcat服务器、Redis缓存数据库和MySQL数据库;客户端向Nginx反向代理服务器发送请求,Nginx反向代理服务器对这些请求进行分发,转发到Tomcat服务器集群,Tomcat服务器接收请求后,将实时数据发送给Redis数据库,Redis使用缓存队列对实时数据进行缓存,计算程序定时从缓存队列中取出数据进行计算,将处理过的数据转换为结构化数据保存在MySQL中。

【技术特征摘要】
1.一种基于Nginx、Redis的高并发负载均衡系统,其特征在于:包括Nginx反向代理服务器、Tomcat服务器、Redis缓存数据库和MySQL数据库;客户端向Nginx反向代理服务器发送请求,Nginx反向代理服务器对这些请求进行分发,转发到Tomcat服务器集群,Tomcat服务器接收请求后,将实时数据发送给Redis数据库,Redis使用缓存队列对实时数据进行缓存,计算程序定时从缓存队列中取出数据进行计算,将处理过的数据转换为结构化数据保存在MySQL中。2.如权利要求1所述的基于Nginx、Redis的高并发负载均衡系统,其特征在于:当Nginx反向代理服务器获得客户端发送的请求时,根据各Tomcat服务器IP配置映射关系和调度算法将请求分发到相应的服务器上。3.如权利要求1所述的基于Nginx、Redis的高并发负载均衡系统,其特征在于:Redis对实时数据进行缓存时,将不同的客户端同一时...

【专利技术属性】
技术研发人员:张鹏程程坤熊芳周学武金惠颖贾旸旸赵齐
申请(专利权)人:河海大学
类型:发明
国别省市:江苏,32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1