CN108366021A - 一种处理并发网页访问业务的方法及系统 - Google Patents
一种处理并发网页访问业务的方法及系统 Download PDFInfo
- Publication number
- CN108366021A CN108366021A CN201810031751.8A CN201810031751A CN108366021A CN 108366021 A CN108366021 A CN 108366021A CN 201810031751 A CN201810031751 A CN 201810031751A CN 108366021 A CN108366021 A CN 108366021A
- Authority
- CN
- China
- Prior art keywords
- web page
- page access
- access business
- concurrent
- business
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000012545 processing Methods 0.000 title claims abstract description 88
- 238000000034 method Methods 0.000 title claims abstract description 77
- 230000008569 process Effects 0.000 claims abstract description 49
- 230000005540 biological transmission Effects 0.000 claims abstract description 25
- 238000009825 accumulation Methods 0.000 claims abstract description 15
- 230000001105 regulatory effect Effects 0.000 claims description 23
- 238000012544 monitoring process Methods 0.000 claims description 9
- 230000015556 catabolic process Effects 0.000 claims description 8
- 238000006731 degradation reaction Methods 0.000 claims description 8
- 230000001276 controlling effect Effects 0.000 claims description 6
- 238000001914 filtration Methods 0.000 claims description 6
- 241001101988 Proxys Species 0.000 claims 1
- 238000012360 testing method Methods 0.000 description 19
- 230000007246 mechanism Effects 0.000 description 9
- 238000005516 engineering process Methods 0.000 description 7
- 230000008901 benefit Effects 0.000 description 6
- 230000006870 function Effects 0.000 description 6
- 230000015654 memory Effects 0.000 description 6
- 230000004044 response Effects 0.000 description 6
- 238000012986 modification Methods 0.000 description 5
- 230000004048 modification Effects 0.000 description 5
- 241000283965 Ochotona princeps Species 0.000 description 4
- 230000033228 biological regulation Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 4
- 238000011161 development Methods 0.000 description 4
- 230000002045 lasting effect Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 239000012141 concentrate Substances 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000011990 functional testing Methods 0.000 description 2
- 238000011056 performance test Methods 0.000 description 2
- 238000010998 test method Methods 0.000 description 2
- HHBOUFYYHJJTNU-UHFFFAOYSA-N 1,3,6-thiadiazepane-2,7-dithione Chemical compound S=C1NCCNC(=S)S1 HHBOUFYYHJJTNU-UHFFFAOYSA-N 0.000 description 1
- 101001094649 Homo sapiens Popeye domain-containing protein 3 Proteins 0.000 description 1
- 101000608234 Homo sapiens Pyrin domain-containing protein 5 Proteins 0.000 description 1
- 101000578693 Homo sapiens Target of rapamycin complex subunit LST8 Proteins 0.000 description 1
- 102100027802 Target of rapamycin complex subunit LST8 Human genes 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 235000013399 edible fruits Nutrition 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000003032 molecular docking Methods 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000005303 weighing Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/24—Traffic characterised by specific attributes, e.g. priority or QoS
- H04L47/2458—Modification of priorities while in transit
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/22—Traffic shaping
- H04L47/225—Determination of shaping rate, e.g. using a moving window
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/02—Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
- H04L63/0227—Filtering policies
- H04L63/0236—Filtering by address, protocol, port number or service, e.g. IP-address or URL
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Information Transfer Between Computers (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明公开了一种处理并发网页访问业务的方法及系统,包括:负载均衡层、Nginx反向代理服务器层、php‑fpm进程管理器层和存储层,其中:所述负载均衡层,用于均衡分配传输通道供并发网页访问业务通行,所述并发网页访问业务由各终端设备在同一时间段并行发送网页访问业务形成;所述Nginx层,用于处理所述并发网页访问业务中并发要求高且逻辑简单的网页访问业务;所述php‑fpm层,用于处理所述并发网页访问业务中并发要求低且逻辑复杂的网页访问业务;所述存储层,存储有多种数据库,以供所述Nginx反向代理服务器层和所述php‑fpm进程管理器层调用。
Description
技术领域
本申请涉及通信技术领域,尤其涉及一种处理并发网页访问业务的方法及系统。
背景技术
随着科学技术的不断发展,通信技术也得到了飞速的发展,电子产品的种类也越来越多,人们也享受到了科技发展带来的各种便利。现在人们可以通过各种类型的电子设备,享受随着科技发展带来的舒适生活。
而为了满足用户多样化的需求,电子设备会实时接收并响应用户大量的操作请求,并返回对应的数据呈现给用户,供用户浏览。
而为了快速响应电子设备的数据请求,目前的相关服务器设置有76台8核16G内存虚机,每天承接近2.7亿PV(page view,即页面浏览量)请求,并返回对应的数据给电子设备。其中,WIFI扫描接口2.5亿,占总请求的90%。
页面浏览量是衡量一个网络新闻频道或网站甚至一条网络新闻的主要指标。网页浏览数是评价网站流量最常用的指标之一。监测网站PV的变化趋势和分析其变化原因是很多站长定期要做的工作。Page Views中的Page一般是指普通的html网页,也包含php、jsp等动态产生的html内容。来自浏览器的一次html内容请求会被看作一个PV,逐渐累计成为PV总数。当然,很多的分析工具也提供了html内容请求以外的Page定义,例如,Flash、AJAX、多媒体文件、文件下载、RSS等特定资源也可以当作Page,对这些资源的一次请求也会被计算为一个PV。
而由于业务逻辑特性,对应于一个PV请求就会建立一个进程,然后和数据库接口连接,用以和对应服务器进行数据通信。一个进程就会连接一个数据库接口。那么如果进程数变大,数据库接口供不应求,就会出现堵塞,导致请求服务器返回数据失败。例如,网页访问的早高峰可能集中于几秒内,高峰单台机器250QPS(每秒查询率,是对一个特定的查询服务器在规定时间内所处理流量多少的衡量标准),由于进程数的并发量太大,故而服务器无法全部响应所有的请求,情况严重时每秒请求失败率高达38%。
发明内容
本发明了提供了一种处理并发网页访问业务的方法及系统,以解决网页请求失败率较高的技术问题。
为解决上述技术问题,本发明提供了一种处理并发网页访问业务的系统,包括:负载均衡层、Nginx反向代理服务器层、php-fpm进程管理器层和存储层,其中:
所述负载均衡层,用于均衡分配传输通道供并发网页访问业务通行,所述并发网页访问业务由各终端设备在同一时间段并行发送网页访问业务形成;
所述Nginx层,用于处理所述并发网页访问业务中并发要求高且逻辑简单的网页访问业务;
所述php-fpm层,用于处理所述并发网页访问业务中并发要求低且逻辑复杂的网页访问业务;
所述存储层,存储有多种数据库,以供所述Nginx反向代理服务器层和所述php-fpm进程管理器层调用。
优选的,所述系统还包括:监控层,用于
实时监控所述多种数据库对应的各数据库接口的当前每秒查询率;
判断各数据库接口的当前每秒查询率是否大于预设标准查询率阈值;
若所述各数据库接口中有第一数据库接口的当前每秒查询率大于所述预设标准查询率阈值,则表示所述第一数据库接口接入的是所述并发网页访问业务中并发要求高且逻辑简单的网页访问业务;
将所述第一数据库接口调入所述Nginx层的连接池。
优选的,所述Nginx层的连接池,用于调控包含了所述第一数据库接口的各个待调控数据库接口的处理顺序,然后请求所述Nginx层对处于当前处理顺序的待调控数据库接口对应的并发要求低且逻辑复杂的网页访问业务;
所述Nginx层的连接池,进一步用于控制处于当前处理顺序的待调控数据库接口对应的并发要求低且逻辑复杂的网页访问业务的接入数量及处理顺序。
优选的,所述Nginx层具体包括:
限流降级模块,用于对所述并发网页访问业务中满足预设条件的网页访问业务进行限流处理。
优选的,所述限流降级模块,具体用于监控所述并发网页访问业务的访问速度;将所述并发网页访问业务的访问速度和预设速度进行对比,将所述并发网页访问业务中访问速度超过预设速度的网页访问业务的优先处理等级降低。
优选的,所述Nginx层具体包括:
防刷模块,用于对所述并发网页访问业务执行防刷策略,以滤除由终端设备恶意刷新生成的网页访问业务。
优选的,所述Nginx层具体包括:
IP黑名单模块,用于对所述并发网页访问业务执行IP地址对比,滤除IP地址存在于IP黑名单上的网页访问业务。
优选的,所述Nginx层具体包括:
用户黑名单模块,用于对所述并发网页访问业务执行用户名对比,滤除用户名存在于用户黑名单上的网页访问业务。
优选的,所述Nginx层具体包括:
管理线程工作项队列,用于对滤除之后获得的剩余网页访问业务进行排序。
优选的,所述Nginx层,用于判断所述并发网页访问业务是否为并发要求高且逻辑简单的高并发轻量级访问业务,若是,则基于所述高并发轻量级访问业务从数据库中调用出对应的网页数据,并返回给对应的终端设备;
若所述并发网页访问业务不是并发要求高且逻辑简单的高并发轻量级访问业务,则表示该网页访问业务是低并发重量级访问业务,则将所述低并发重量级访问业务。
优选的,所述php-fpm层,用于建立进程对所述低并发重量级访问业务进行处理,并响应进程从数据库中调用出所述低并发重量级访问业务对应的网页数据,并返回给对应的终端设备。
优选的,所述多种数据库至少包括:mysql数据库、redis数据库、pika数据库。
本发明公开了一种处理并发网页访问业务的方法,所述方法应用于上述描述的一种处理并发网页访问业务的系统,所述方法包括:
所述负载均衡层均衡分配传输通道供并发网页访问业务通行,所述并发网页访问业务由各终端设备在同一时间段并行发送网页访问业务形成;
所述Nginx层处理所述并发网页访问业务中并发要求高且逻辑简单的网页访问业务;
所述php-fpm层处理所述并发网页访问业务中并发要求低且逻辑复杂的网页访问业务。
优选的,在所述均衡分配传输通道供并发网页访问业务通行之后,所述方法还包括:
监控层实时监控所述多种数据库对应的各数据库接口的当前每秒查询率;
所述监控层判断各数据库接口的当前每秒查询率是否大于预设标准查询率阈值;
所述监控层若所述各数据库接口中有第一数据库接口的当前每秒查询率大于所述预设标准查询率阈值,则表示所述第一数据库接口接入的是所述并发网页访问业务中并发要求高且逻辑简单的网页访问业务;
所述监控层将所述第一数据库接口调入所述Nginx层的连接池。
优选的,所述Nginx层的连接池调控包含了所述第一数据库接口的各个待调控数据库接口的处理顺序,然后请求所述Nginx层对处于当前处理顺序的待调控数据库接口对应的并发要求低且逻辑复杂的网页访问业务;
所述Nginx层的连接池控制处于当前处理顺序的待调控数据库接口对应的并发要求低且逻辑复杂的网页访问业务的接入数量及处理顺序。
优选的,所述Nginx层处理所述并发网页访问业务中并发要求高且逻辑简单的网页访问业务,具体包括:
所述Nginx层基于所述高并发轻量级访问业务从数据库中调用出对应的网页数据,并返回给对应的终端设备。
优选的,所述php-fpm层处理所述并发网页访问业务中并发要求低且逻辑复杂的网页访问业务,具体包括:
建立进程对所述低并发重量级访问业务进行处理,并响应进程从数据库中调用出所述低并发重量级访问业务对应的网页数据,并返回给对应的终端设备。
通过本发明的一个或者多个技术方案,本发明具有以下有益效果或者优点:
本发明公开了一种处理并发网页访问业务的系统,为了解决网页请求失败率较高的问题,该系统设置有:负载均衡层、Nginx反向代理服务器层、php-fpm进程管理器层、存储层;其中,所述负载均衡层,均衡分配传输通道供各终端设备并行发送给所述系统的并发网页访问业务通行,以避免同一时段的网页访问业务从同一通道涌入Nginx层从而造成系统堵塞。本发明利用所述Nginx层和所述php-fpm层分开处理并发网页访问业务。所述Nginx层,处理所述并发网页访问业务中并发要求高且逻辑简单的网页访问业务;所述php-fpm层,处理所述并发网页访问业务中并发要求低且逻辑复杂的网页访问业务;也就是说,将并发要求高且逻辑简单的网页访问业务用openresty实现,其他逻辑复杂并发要求低的网页访问业务依然创建进程处理,故而即便是并发网页访问业务也能够响应网页访问业务返回对应的网页数据给终端设备,进而提高访问请求的成功率。所述存储层,存储有多种数据库,以供所述Nginx反向代理服务器层和所述php-fpm进程管理器层调用,进而保证访问请求的成功率。
附图说明
图1为本发明实施例中一种处理并发网页访问业务的系统的架构图;
图2为本发明实施例中基于php-fpm的传统架构图;
图3A-图3B为本发明实施例中测试环境的介绍图;
图4为本发明实施例中测试之后两个架构的效果对比图;
图5A-图5D为本发明实施例中测试之后两个架构的各项指标对比图;
图6为本发明实施例中测试之后两个架构的另一效果对比图;
图7A-图7B为本发明实施例中测试之后两个架构的各项指标另一对比图。
具体实施方式
为了使本申请所属技术领域中的技术人员更清楚地理解本申请,下面结合附图,通过具体实施例对本申请技术方案作详细描述。
本发明实施例公开了一种处理并发网页访问业务的系统,包括:负载均衡层、Nginx反向代理服务器层、php-fpm进程管理器层和存储层。
在具体的实施过程中,为了解决网页请求失败率较高的问题,本发明实施例的系统构建了Nginx反向代理服务器层、php-fpm进程管理器层来分别处理不同的并发网页访问业务。将并发网页访问业务中并发要求高且逻辑简单的网页访问业务用Nginx层处理,将并发网页访问业务中并发要求低且逻辑复杂的网页访问业务利用原来的逻辑,也就是利用php-fpm层来处理,故而能够将高并发网页访问业务分别处理,故而即便在各终端设备在同一时间段生成并发网页访问业务时,也能够响应并发网页访问业务返回对应的网页数据给终端设备,进而保证访问请求的成功率。
下面介绍本发明实施例涉及的系统的具体架构。
在构建系统的实施过程中,本发明实施例主要是采用OpenResty对服务主体部分进行重构,充分利用openresty将lua内嵌到nginx中的特性,将整个业务重心向nginx层偏移。
OpenResty是一个基于Nginx和Lua的高性能Web平台,集成了很多精良的Lua库、第三方模块等。用于方便地搭建能够处理超高并发、扩展性极高的动态Web服务。Openresty的目标是让Web服务直接跑在Nginx服务内部,充分利用Nginx的非阻塞I/O模型,不仅仅对http客户端请求,对远程后端如mysql、memcache及redis等都高性能响应。
Nginx("engine x")是一个高性能的HTTP和反向代理服务器软件,也是一个IMAP/POP3/SMTP代理服务器。它是一款面向性能设计的HTTP服务器,相较于Apache、lighttpd具有占有内存少,稳定性高等优势。nginx不采用每客户机一线程的设计模型,而是充分使用异步逻辑,削减了上下文调度开销,所以并发服务能力更强。
下面介绍本发明实施例构建的系统中的各个架构,本发明的系统采用openresty后架构如图1所示,主要分为四层:负载均衡层、Nginx反向代理服务器层、php-fpm进程管理器层和存储层。存储层存储有多种数据库,以供所述Nginx反向代理服务器层和所述php-fpm进程管理器层调用。存储层涉及的多种数据库至少包括:mysql数据库、redis数据库、pika数据库。当然,还可以涉及其他的数据库。数据库中存储有各种逻辑、执行机制、预设的各种判断标准等等。各数据库具有各自的数据库接口,用来和需要从数据库调用数据的各功能模块进行数据连接,以便从数据库获得请求的数据。
所述负载均衡层。
负载均衡层用于均衡分配传输通道供并发网页访问业务通行,所述并发网页访问业务由各终端设备在同一时间段并行发送网页访问业务形成。
负载均衡层用于均衡分配传输通道供各终端设备在同一时间段并行发送形成的并发网页访问业务的通行。
网页访问业务,指的是对应终端设备生成请求所述系统响应返回对应的网页数据的网页访问业务。而并发网页访问业务,是由各终端设备在同一时间段内都向所述系统发送网页访问业务,进而形成的网页访问业务集合,并发网页访问业务是在该时间段中发送的所有网页访问业务的统称。
在具体的实施过程中,本发明实施例中涉及的终端设备可以是任意的电子终端设备,例如计算机、智能手机、笔记本电脑、平板电脑等等。在对应用户有业务访问需求时,各终端设备会生成请求所述系统响应返回对应的网页数据的网页访问业务,并发送给本发明实施例的系统。而在早高峰集中的几秒内,各终端设备如果都发送网页访问业务给本发明的系统,则会形成高并发网页访问业务。
而为了均衡接收各终端设备在同一时间段内并行发送形成的并发网页访问业务,本发明实施例的系统构建了负载均衡层,负载指的就是上述描述的终端设备。负载均衡层的主要功能,是用来均衡分配传输通道接收并发网页访问业务,避免在同一时段接收并发网页访问业务时,由于传输通道分配不均造成导致系统崩溃的情况出现。
当然,除此之外,为了达到负载均衡的目的,负载均衡层还可以做其他的处理。
作为一种可选的实施例,负载均衡层在接收到并发网页访问业务时,可以预先判断所述并发网页访问业务是高并发网页访问业务还是低并发网页访问业务。在判断的过程中,判断该并发网页访问业务对应时间段的并发量是否达到预设并发量,若达到预设并发量,则表示并发网页访问业务是高并发网页访问业务。预设并发量指的是同一时间段并行发送网页访问业务的数量,例如39W条。如果该并发网页访问业务在5秒内的并发量是40W,那么则表示并发网页访问业务是高并发网页访问业务。若没有达到预设并发量,则表示并发网页访问业务是低并发网页访问业务。当然,除上述判断方式之外,还有其他的方式进行判断,例如判断并发网页访问业务对应时间段的并发量是否满足第一预设并发量范围(30W条-80W条),若满足该第一预设并发量范围,则表示并发网页访问业务是高并发网页访问业务。判断并发网页访问业务对应时间段的并发量是否满足第二预设并发量范围(10W条-30W条),若满足该第二预设并发量范围,则表示并发网页访问业务是低并发网页访问业务。在预先判断出高并发网页访问业务和低并发网页访问业务之后,然后将所述高并发网页访问业务通过传输通道传输给Nginx层处理,当然,在传输给Nginx层处理之前,需要监控层对其传输的并发网页访问业务再次进行判断。
作为一种可选的实施例,负载均衡层也可以直接均衡分配传输通道,将并发网页访问业务均衡传输给Nginx层和php-fpm层,而在传输之前,通过监控层对各数据库接口进行监控,进而将并发要求高且逻辑简单的网页访问业务发传输给Nginx层,将并发要求低且逻辑复杂的网页访问业务传输给php-fpm层。作为一种可选的实施例,监控层可以接收由负载均衡层预先判断之后均衡传输过来的并发网页访问业务,然后进行二次判断。因为在判断时,监控层可能和均衡负载层的判断标准不一样,例如均衡负责层判断出该并发网页访问业务为高并发网页访问业务之后,监控层还会判断其执行逻辑。另外一种可能性是,监控层的判断标准更高,也可能将其判断为低并发网页访问业务。当然,一切以监控层的判断标准为最后判断标准。另外,监控层也可以接收由负载均衡层直接均衡传输过来的并发网页访问业务,然后进行判断。
监控层用于判断所述并发网页访问业务是否为并发要求高且逻辑简单的高并发轻量级访问业务,若是,则传输给Nginx层;若所述并发网页访问业务不是并发要求高且逻辑简单的高并发轻量级访问业务,则表示该网页访问业务是并发要求低但是逻辑复杂的访问业务,也就是低并发重量级访问业务,则将所述低并发重量级访问业务发送给php-fpm层处理。
数据库中除了存储有网页数据之外,一些判断机制、判断逻辑、判断标准等等都会存储在数据库中,监控层在有需求时可以随时调用相应的数据。
而在具体的判断过程中,监控层会判断所述并发网页访问业务是否为在对应时间段中满足预设并发量的网页访问业务,预设并发量例如是单个的数值80W条,或者监控层会判断所述并发网页访问业务是否为在对应时间段中满足预设并发量范围的网页访问业务,例如80W条-100W条。而监控层在判断并发网页访问业务的处理逻辑时,也是具有标准的预设逻辑等级。监控层会基于并发网页访问业务的逻辑判断是复杂的逻辑还是简单的逻辑。例如监控层确定出并发网页访问业务的逻辑对应的复杂度等级,然后判断该复杂度等级是否高于预设逻辑等级,若高于,则表示逻辑复杂。若低于,则表示逻辑简单。当然,还有其他判断逻辑复杂还是简单的方法,例如从高到低设置有N个复杂度等级(N为正整数,例如5个复杂度等级)。将确定出并发网页访问业务的逻辑对应的复杂度之后,判断其属于N个复杂度等级中的第几个等级,然后基于确定出的等级来判定逻辑复杂还是简单。例如判断该复杂度中属于5个复杂度等级中的哪个等级,若属于等级3、4、5则表示逻辑复杂。若属于等级1、2则表示逻辑简单。那么则将逻辑简单的并发网页访问业务确定为并发要求高且逻辑简单的高并发轻量级访问业务。
进一步的,监控层还可以基于数据接口的每秒查询率进行判断是否为高并发网页访问业务。
在具体的实施过程中,系统还包括监控层,用于实时监控所述多种数据库对应的各数据库接口的当前每秒查询率;判断各数据库接口的当前每秒查询率是否大于预设标准查询率阈值;若所述各数据库接口中有第一数据库接口的当前每秒查询率大于所述预设标准查询率阈值,则表示所述第一数据库接口接入的是所述并发网页访问业务中并发要求高且逻辑简单的网页访问业务;将所述第一数据库接口调入所述Nginx层的连接池。例如图1中,则将mysql数据库、redis数据库对应的数据库接口调入连接池。
以上举例只是为了说明和解释本发明,本发明实施例还包含有其他的判定方式,在此则不再赘述,其他任何适用于本发明的判断方法也应当包含在本发明之内。
所述Nginx层,用于处理所述并发网页访问业务中并发要求高且逻辑简单的网页访问业务。
具体来说,所述Nginx层,用于基于所述高并发轻量级访问业务从数据库中调用出对应的网页数据,并返回给对应的终端设备。
在具体的实施过程中,所述Nginx层的连接池,用于调控包含了所述第一数据库接口的各个待调控数据库接口的处理顺序,然后请求所述Nginx层对处于当前处理顺序的待调控数据库接口对应的并发要求低且逻辑复杂的网页访问业务;所述Nginx层的连接池,进一步用于控制处于当前处理顺序的待调控数据库接口对应的并发要求低且逻辑复杂的网页访问业务的接入数量及处理顺序。
作为一种可选的实施例,在Nginx层还具有其他的功能,下面进行具体的介绍。
所述Nginx层具体包括:限流降级模块limit-req,用于对所述并发网页访问业务中满足预设条件的网页访问业务进行限流处理。
具体来说,所述限流降级模块limit-req,具体用于监控所述并发网页访问业务的访问速度;将所述并发网页访问业务的访问速度和预设速度进行对比,将所述并发网页访问业务中访问速度超过预设速度的网页访问业务的优先处理等级降低。如果并发网页访问业务中的某个网页访问业务的访问速度超时,则将其处理等级降低,优先处理下一个网页访问业务,以此来保证业务处理效率,并防止恶意访问。具体来说,首先为共享内存配置一个速率rate,对于每个网页访问业务来说,处理请求的速度不超过每秒1个访问。如果某个网页访问业务请求超过1秒,那么就会拒绝处理该网页访问业务。
作为一种可选的实施例,所述Nginx层还会设置一系列防刷措施,用来避免由恶意访问造成的系统崩溃。
例如,Nginx层具体包括:防刷模块,用于对所述并发网页访问业务执行防刷策略,以滤除由终端设备恶意刷新生成的网页访问业务。
作为一种可选的实施例,所述Nginx层具体包括:IP黑名单模块,用于对所述并发网页访问业务执行IP地址对比,滤除IP地址存在于IP黑名单上的网页访问业务。
作为一种可选的实施例,所述Nginx层具体包括:用户黑名单模块,用于对所述并发网页访问业务执行用户名对比,滤除用户名存在于用户黑名单上的网页访问业务。
作为一种可选的实施例,所述Nginx层具体包括:管理线程工作项队列Dispatcher,用于对滤除之后获得的剩余网页访问业务进行排序。
而在处理高并发轻量级业务时,系统会调用并发要求高且逻辑简单对应的API接口来和高并发轻量级业务对应的接口API对接,并进行业务通信,例如传输对应的网页数据等等。
所述php-fpm层,用于处理所述并发网页访问业务中并发要求低且逻辑复杂的网页访问业务。
所述php-fpm层,用于建立进程对所述低并发重量级访问业务进行处理,并响应进程从数据库中调用出所述低并发重量级访问业务对应的网页数据,并返回给对应的终端设备。
在具体的实施过程中,所述php-fpm层在处理低并发重量级访问业务的过程中,监控层用于判断所述并发网页访问业务是否为并发要求低且逻辑复杂的低并发重量级访问业务,若是,则基于所述低并发重量级访问业务从数据库中调用出对应的网页数据,并返回给对应的终端设备;若所述并发网页访问业务不是低并发重量级访问业务,则表示该网页访问业务是并发要求高且逻辑简单的高并发轻量级访问业务,则将所述低并发重量级访问业务发送给Nginx层处理。
作为一种可选的实施例,监控层是实时监控所述php-fpm层调用的数据库对应的各数据库接口的当前每秒查询率;
判断所述php-fpm层调用的数据库接口的当前每秒查询率是否大于所述预设标准查询率阈值;
若所述php-fpm层调用的数据库接口中有第二数据库接口的当前每秒查询率大于所述预设标准查询率阈值,则表示所述第二数据库接口接入的是所述并发网页访问业务中并发要求高且逻辑简单的网页访问业务;
将所述第二数据库接口调入所述Nginx层的连接池。
数据库中除了存储有网页数据之外,一些判断机制、判断逻辑、判断标准等等都会存储在数据库中,监控层在有需求时可以随时调用相应的数据。
而在具体的判断过程中,监控层会判断所述并发网页访问业务是否为在对应时间段中低于预设并发量的网页访问业务,预设并发量例如是单个的数值20W条,或者监控层会判断所述并发网页访问业务是否为在对应时间段中满足预设并发量范围的网页访问业务,例如10W条-20W条。而监控层在判断并发网页访问业务的处理逻辑时,也是具有标准的预设逻辑等级。监控层会基于并发网页访问业务的逻辑判断是复杂的逻辑还是简单的逻辑。例如监控层确定出并发网页访问业务的逻辑对应的复杂度等级,然后判断该复杂度等级是否高于预设逻辑等级,若高于,则表示逻辑复杂。若低于,则表示逻辑简单。当然,还有其他判断逻辑复杂还是简单的方法,例如从高到低设置有N个复杂度等级(N为正整数,例如5个复杂度等级)。将确定出并发网页访问业务的逻辑对应的复杂度之后,判断其属于N个复杂度等级中的第几个等级,然后基于确定出的等级来判定逻辑复杂还是简单。例如判断该复杂度中属于5个复杂度等级中的哪个等级,若属于等级3、4、5则表示逻辑复杂。若属于等级1、2则表示逻辑简单。那么则将逻辑复杂的并发网页访问业务确定为并发要求高且逻辑复杂的低并发重量级访问业务。
php-fpm层,也就是php-fpm进程管理器层。php-fpm层中设置有多个进程管理器,用来创建对应的进程处理所述并发网页访问业务中并发要求低且逻辑复杂的网页访问业务。
在传统的php-fpm框架中,所有业务逻辑均在php-fpm进程内实现,而传统的系统瓶颈自于数据库的访问,在高并发的时候,若使用数据库长连接fpm进程间不能共享连接,导致数据库server端一个端口维持了数万个连接,性能大大下降;若使用短连接,频繁的建立连接断开连接操作很快将client端连接数耗尽导致请求失败。
参看图2,是传统的php-fpm框架,在该框架结构中,防刷策略、IP黑名单、用户黑名单等等防刷机制都存储在该传统框架中,形成处理机制来处理业务逻辑。这些处理机制都需要php-fpm去长连接数据库,导致数据库server端一个端口维持了数万个连接,性能大大下降。故而,考虑到传统框架的上述瓶颈,本发明实施例中涉及的框架将业务处理逻辑偏移到述Nginx层,将并发网页访问业务中并发要求高且逻辑简单的网页访问业务用Nginx层处理,将并发网页访问业务中并发要求低且逻辑复杂的网页访问业务利用原来的逻辑,也就是利用php-fpm层来处理,故而能够将高并发网页访问业务分别处理,故而即便在各终端设备在同一时间段生成并发网页访问业务时,也能够响应并发网页访问业务返回对应的网页数据给终端设备,进而保证访问请求的成功率。
为了进一步测试本发明实施例中涉及的系统,本发明实施例将传统架构和本发明实施例中涉及的系统架构进行对比。
具体参看下面的实施方式。
在该实施例中,对上述两个架构进行了功能测试和性能测试,将重点描述性能测试部分。
测试方法:(1)采用日志回放方式,采样1000W条request日志。(2)将线上数据注入测试环境DB,包括pika与redis。(3)在测试环境同时部署php服务及lua服务,采用不同uri访问。(4)同时关闭php与lua的限流及防刷模块。(5)忽略返回参数顺序,若php服务返回数据与lua服务返回一致,即认为测试通过。
测试环境,参看图3A-图3B。
测试结果:
两种不一致情况:
(1)参数下发顺序不一致,例如php下发{“a”:1,"b":2};lua下发{“b”:2,"a":1}。
(2)同样的参数下发格式不一致,例如php下发{“a”:“1”};lua下发{“a”:1}。php为弱类型语言导致。
以上两种情况将会通过客户端实际测试排除错误可能性。除了以上两种情况,其他数据下发都一致,测试通过。
性能测试
测试方法
(1)针对性能瓶颈--数据库连接,对两个逻辑分支进行压测,保证测试环境压测结果能正向反应正式环境性能。
第一种:只查询redis情况,在所查AP没有shopid属性时会执行这个分支,线上request绝大多数都进入这个分支。
第二种:既查询redis又查询mysql,在所查AP shopid不为0的情况下执行这个分支。线上数据库满足条件的AP只有几十万,占所有AP的0.21%。
(2)关闭限流和防刷模块,保证每个request都能请求数据库。
测试工具
Vegeta,一个多用途的HTTP负载测试工具,它可以当命令行工具和类库使用。Veget以恒定的请求速度来测试HTTP服务。
测试环境
被压测机器与“功能测试”相同,压测机器采用同机房的相同配置机器,尽量减少网络因素对测试结果的影响。
查询REDIS
详情参看图4:
(1)在持续200+QPS压60S情况下,php出现请求失败情况,成功率94%。可见200到500之间是php架构的上限。
(2)在持续5000QPS压60S情况下,lua出现请求失败情况,成功率99%。5000QPS为lua架构上限,可达到php的十倍。
(3)在相同并发相同持续时间的情况下,lua的相应时间与php的相应时间相差很大。
其他指标对比:
在PHP的临界指标400QPS,持续压测60S情况下,针对以下几种指标进行对比。
(1)PV--相应时间分布柱状图
可以看到lua绝大多数请求响应时间在10ms以下,参看图5A。
而php大多数分布在50-100ms间,甚至100ms+,参看图5B。
(2)内存占用率(%),参看图5C。
(3)1分钟负载,参看图5D。
(4)CPU IDLE,两者持平,均为99.6。
查询Redis&查询mysql
详情:
(1)在保持600QPS压测60S情况下,lua与php都出现严重请求失败情况。在请求mysql的分支中,由于mysql的性能限制,两种框架表现差不多,上限基本为200QPS+。参看图6。
其他指标对比:
同样的,我们在PHP的临界指标400QPS,持续压测60S情况下,针对以下几种指标进行对比。从以下对比中可发现lua在内存占用和机器负载方面优势较大。
(1)内存占用率(%),参看图7A。
(2)1分钟负载,参看图7B。
经过压测,新的lua框架在lua+redis模式下表现优异,QPS上限是php框架的十倍。在其他指标:机器负载、内存占用方面都要明显强于php框架。
为了说明和解释本发明,在下面利用无线WIFI的例子进行说明。
在具体的实施过程中,由于在网页访问的早高峰可能集中于几秒内的时候,目前的WIFI扫描接口(Wifi.scan)2.5亿,占总请求的90%,故而在每秒请求失败率高达38%的基础上,WIFI扫描接口(WIFI.scan)响应失败率是占其中很大的比例。
故而,在本发明中的系统中,当终端设备利用无线网络在同一时间段内并行发送形成的并发网页访问业务之后,负载均衡层会均衡分配传输通道接收并发网页访问业务,并传输给Nginx层、php-fpm层进行相应处理。该实施例中,负载均衡层为LVS负载均衡层,LVS(Linux Virtual Server,Linux虚拟服务器),是一个虚拟的服务器集群系统。而Nginx层会对并发网页访问业务进行限流降级、防刷、排列中的一种或者多种处理之后,处理所述并发网页访问业务中并发要求高且逻辑简单的网页访问业务,例如,和WIFI扫描接口(WIFI.scan)进行通信,从数据库中调用对应的网页数据返回给相应的终端设备。利用php-fpm层处理所述并发网页访问业务中并发要求低且逻辑复杂的网页访问业务。
基于统一发明构思,下面的实施例介绍一种处理并发网页访问业务的方法,包括下列步骤:
步骤1,所述负载均衡层均衡分配传输通道供并发网页访问业务通行,所述并发网页访问业务由各终端设备在同一时间段并行发送网页访问业务形成。
而在所述负载均衡层均衡分配传输通道供并发网页访问业务通行之前,该方法还包括:所述负载均衡层判断所述并发网页访问业务是高并发网页访问业务还是低并发网页访问业务。而具体的判断机制在上述实施例中对于负载均衡层的功能描述中已经进行了详细的说明,在此本发明不再赘述。
进一步的,在所述均衡分配传输通道供并发网页访问业务通行之后,所述方法还包括:
监控层实时监控所述多种数据库对应的各数据库接口的当前每秒查询率;
所述监控层判断各数据库接口的当前每秒查询率是否大于预设标准查询率阈值;
所述监控层若所述各数据库接口中有第一数据库接口的当前每秒查询率大于所述预设标准查询率阈值,则表示所述第一数据库接口接入的是所述并发网页访问业务中并发要求高且逻辑简单的网页访问业务;
所述监控层将所述第一数据库接口调入所述Nginx层的连接池。
当然,监控层也有其他的判断机制,具体的判断机制在上述实施例中已经具有详细的描述,在此本发明不再赘述。
步骤2,所述Nginx层处理所述并发网页访问业务中并发要求高且逻辑简单的网页访问业务。
具体来说,在Nginx层处理所述并发网页访问业务中并发要求高且逻辑简单的网页访问业务之前,所述Nginx层的连接池调控包含了所述第一数据库接口的各个待调控数据库接口的处理顺序,然后请求所述Nginx层对处于当前处理顺序的待调控数据库接口对应的并发要求低且逻辑复杂的网页访问业务;所述Nginx层的连接池控制处于当前处理顺序的待调控数据库接口对应的并发要求低且逻辑复杂的网页访问业务的接入数量及处理顺序。
进一步的,由于负载均衡层可能会进行预先判断,故而此处接收到的并发网页访问业务有可能是负载均衡层进行预先判断之后得到的高并发网页访问业务。而不管负载均衡层是否进行预先判断,Nginx层在接收到之前,监控层都会进行判断,在判断的过程中,判断所述并发网页访问业务是否为并发要求高且逻辑简单的高并发轻量级访问业务;若是,则基于所述高并发轻量级访问业务从数据库中调用出对应的网页数据,并返回给对应的终端设备;若所述并发网页访问业务不是并发要求高且逻辑简单的高并发轻量级访问业务,则表示该网页访问业务是低并发重量级访问业务,则将所述低并发重量级访问业务发送给php-fpm层处理。具体的实施过程在监控功能描述时已经具有详细的介绍,在此本发明不再赘述。
而在具体的实施过程中,所述Nginx层基于所述高并发轻量级访问业务从数据库中调用出对应的网页数据,并返回给对应的终端设备。
另外,Nginx层具有防刷功能,即:对所述并发网页访问业务执行防刷策略,以滤除由终端设备恶意刷新生成的网页访问业务。
作为一种可选的实施例,所述Nginx层对所述并发网页访问业务执行IP地址对比,滤除IP地址存在于IP黑名单上的网页访问业务。
作为一种可选的实施例,所述Nginx层对所述并发网页访问业务执行用户名对比,滤除用户名存在于用户黑名单上的网页访问业务。
作为一种可选的实施例,所述Nginx层对滤除之后获得的剩余网页访问业务进行排序。
步骤3,所述php-fpm层处理所述并发网页访问业务中并发要求低且逻辑复杂的网页访问业务。
进一步的,php-fpm层建立进程对所述低并发重量级访问业务进行处理,并响应进程从数据库中调用出所述低并发重量级访问业务对应的网页数据,并返回给对应的终端设备。
php-fpm层的具体实施过程在上述实施例已经具有详细的描述,在此本发明不再赘述。
通过本发明的一个或者多个实施例,本发明具有以下有益效果或者优点:
本发明公开了一种处理并发网页访问业务的方法及系统,为了解决网页请求失败率较高的问题,该系统设置有:负载均衡层、Nginx反向代理服务器层、php-fpm进程管理器层、存储层;其中,所述负载均衡层,均衡分配传输通道供各终端设备并行发送给所述系统的并发网页访问业务通行,以避免同一时段的网页访问业务从同一通道涌入Nginx层从而造成系统堵塞。本发明利用所述Nginx层和所述php-fpm层分开处理并发网页访问业务。所述Nginx层,处理所述并发网页访问业务中并发要求高且逻辑简单的网页访问业务;所述php-fpm层,处理所述并发网页访问业务中并发要求低且逻辑复杂的网页访问业务;也就是说,将并发要求高且逻辑简单的网页访问业务用openresty实现,其他逻辑复杂并发要求低的网页访问业务依然创建进程处理,故而即便在并发并发网页访问业务时也能够响应网页访问业务返回对应的网页数据给终端设备,进而提高访问请求的成功率。所述存储层,存储有多种数据库,以供所述Nginx反向代理服务器层和所述php-fpm进程管理器层调用,进而保证访问请求的成功率。
尽管已描述了本申请的优选实施例,但本领域内的普通技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
本发明公开了A1、一种处理并发网页访问业务的系统,其特征在于,包括:负载均衡层、Nginx反向代理服务器层、php-fpm进程管理器层和存储层,其中:
所述负载均衡层,用于均衡分配传输通道供并发网页访问业务通行,所述并发网页访问业务由各终端设备在同一时间段并行发送网页访问业务形成;
所述Nginx层,用于处理所述并发网页访问业务中并发要求高且逻辑简单的网页访问业务;
所述php-fpm层,用于处理所述并发网页访问业务中并发要求低且逻辑复杂的网页访问业务;
所述存储层,存储有多种数据库,以供所述Nginx反向代理服务器层和所述php-fpm进程管理器层调用。
A2、如A1所述的一种处理并发网页访问业务的系统,其特征在于,所述系统还包括:监控层,用于
实时监控所述多种数据库对应的各数据库接口的当前每秒查询率;
判断各数据库接口的当前每秒查询率是否大于预设标准查询率阈值;
若所述各数据库接口中有第一数据库接口的当前每秒查询率大于所述预设标准查询率阈值,则表示所述第一数据库接口接入的是所述并发网页访问业务中并发要求高且逻辑简单的网页访问业务;
将所述第一数据库接口调入所述Nginx层的连接池。
A3、如A2所述的一种处理并发网页访问业务的系统,其特征在于,
所述Nginx层的连接池,用于调控包含了所述第一数据库接口的各个待调控数据库接口的处理顺序,然后请求所述Nginx层对处于当前处理顺序的待调控数据库接口对应的并发要求低且逻辑复杂的网页访问业务;
所述Nginx层的连接池,进一步用于控制处于当前处理顺序的待调控数据库接口对应的并发要求低且逻辑复杂的网页访问业务的接入数量及处理顺序。
A4、如A1所述的一种处理并发网页访问业务的系统,其特征在于,所述Nginx层具体包括:
限流降级模块,用于对所述并发网页访问业务中满足预设条件的网页访问业务进行限流处理。
A5、如A4所述的一种处理并发网页访问业务的系统,其特征在于,所述限流降级模块,具体用于监控所述并发网页访问业务的访问速度;将所述并发网页访问业务的访问速度和预设速度进行对比,将所述并发网页访问业务中访问速度超过预设速度的网页访问业务的优先处理等级降低。
A6、如A1所述的一种处理并发网页访问业务的系统,其特征在于,所述Nginx层具体包括:
防刷模块,用于对所述并发网页访问业务执行防刷策略,以滤除由终端设备恶意刷新生成的网页访问业务。
A7、如A1所述的一种处理并发网页访问业务的系统,其特征在于,所述Nginx层具体包括:
IP黑名单模块,用于对所述并发网页访问业务执行IP地址对比,滤除IP地址存在于IP黑名单上的网页访问业务。
A8、如A1所述的一种处理并发网页访问业务的系统,其特征在于,所述Nginx层具体包括:
用户黑名单模块,用于对所述并发网页访问业务执行用户名对比,滤除用户名存在于用户黑名单上的网页访问业务。
A9、如A1-A8任一权项所述的一种处理并发网页访问业务的系统,其特征在于,所述Nginx层具体包括:
管理线程工作项队列,用于对滤除之后获得的剩余网页访问业务进行排序。
A10、如A1-A8任一权项所述的一种处理并发网页访问业务的系统,其特征在于,
所述Nginx层,用于基于所述高并发轻量级访问业务从数据库中调用出对应的网页数据,并返回给对应的终端设备。
A11、如A1所述的一种处理并发网页访问业务的系统,其特征在于,所述php-fpm层,用于建立进程对所述低并发重量级访问业务进行处理,并响应进程从数据库中调用出所述低并发重量级访问业务对应的网页数据,并返回给对应的终端设备。
A12、如A1所述的一种处理并发网页访问业务的系统,其特征在于,所述多种数据库至少包括:mysql数据库、redis数据库、pika数据库。
B13、一种处理并发网页访问业务的方法,其特征在于,包括:
所述负载均衡层均衡分配传输通道供并发网页访问业务通行,所述并发网页访问业务由各终端设备在同一时间段并行发送网页访问业务形成;
所述Nginx层处理所述并发网页访问业务中并发要求高且逻辑简单的网页访问业务;
所述php-fpm层处理所述并发网页访问业务中并发要求低且逻辑复杂的网页访问业务。
B14、如B13所述的一种处理并发网页访问业务的方法,其特征在于,
在所述均衡分配传输通道供并发网页访问业务通行之后,所述方法还包括:
监控层实时监控所述多种数据库对应的各数据库接口的当前每秒查询率;
所述监控层判断各数据库接口的当前每秒查询率是否大于预设标准查询率阈值;
所述监控层若所述各数据库接口中有第一数据库接口的当前每秒查询率大于所述预设标准查询率阈值,则表示所述第一数据库接口接入的是所述并发网页访问业务中并发要求高且逻辑简单的网页访问业务;
所述监控层将所述第一数据库接口调入所述Nginx层的连接池。
B15、如B14所述的一种处理并发网页访问业务的方法,其特征在于,所述Nginx层处理所述并发网页访问业务中并发要求高且逻辑简单的网页访问业务之前,所述方法还包括:
所述Nginx层的连接池调控包含了所述第一数据库接口的各个待调控数据库接口的处理顺序,然后请求所述Nginx层对处于当前处理顺序的待调控数据库接口对应的并发要求低且逻辑复杂的网页访问业务;
所述Nginx层的连接池控制处于当前处理顺序的待调控数据库接口对应的并发要求低且逻辑复杂的网页访问业务的接入数量及处理顺序。
B16、如B13所述的一种处理并发网页访问业务的方法,其特征在于,所述Nginx层处理所述并发网页访问业务中并发要求高且逻辑简单的网页访问业务,具体包括:
所述Nginx层基于所述高并发轻量级访问业务从数据库中调用出对应的网页数据,并返回给对应的终端设备。
B17、如B13所述的一种处理并发网页访问业务的方法,其特征在于,所述php-fpm层处理所述并发网页访问业务中并发要求低且逻辑复杂的网页访问业务,具体包括:
建立进程对所述低并发重量级访问业务进行处理,并响应进程从数据库中调用出所述低并发重量级访问业务对应的网页数据,并返回给对应的终端设备。
Claims (10)
1.一种处理并发网页访问业务的系统,其特征在于,包括:负载均衡层、Nginx反向代理服务器层、php-fpm进程管理器层和存储层,其中:
所述负载均衡层,用于均衡分配传输通道供并发网页访问业务通行,所述并发网页访问业务由各终端设备在同一时间段并行发送网页访问业务形成;
所述Nginx层,用于处理所述并发网页访问业务中并发要求高且逻辑简单的网页访问业务;
所述php-fpm层,用于处理所述并发网页访问业务中并发要求低且逻辑复杂的网页访问业务;
所述存储层,存储有多种数据库,以供所述Nginx反向代理服务器层和所述php-fpm进程管理器层调用。
2.如权利要求1所述的一种处理并发网页访问业务的系统,其特征在于,所述系统还包括:监控层,用于
实时监控所述多种数据库对应的各数据库接口的当前每秒查询率;
判断各数据库接口的当前每秒查询率是否大于预设标准查询率阈值;
若所述各数据库接口中有第一数据库接口的当前每秒查询率大于所述预设标准查询率阈值,则表示所述第一数据库接口接入的是所述并发网页访问业务中并发要求高且逻辑简单的网页访问业务;
将所述第一数据库接口调入所述Nginx层的连接池。
3.如权利要求2所述的一种处理并发网页访问业务的系统,其特征在于,
所述Nginx层的连接池,用于调控包含了所述第一数据库接口的各个待调控数据库接口的处理顺序,然后请求所述Nginx层对处于当前处理顺序的待调控数据库接口对应的并发要求低且逻辑复杂的网页访问业务;
所述Nginx层的连接池,进一步用于控制处于当前处理顺序的待调控数据库接口对应的并发要求低且逻辑复杂的网页访问业务的接入数量及处理顺序。
4.如权利要求1所述的一种处理并发网页访问业务的系统,其特征在于,所述Nginx层具体包括:
限流降级模块,用于对所述并发网页访问业务中满足预设条件的网页访问业务进行限流处理。
5.如权利要求4所述的一种处理并发网页访问业务的系统,其特征在于,所述限流降级模块,具体用于监控所述并发网页访问业务的访问速度;将所述并发网页访问业务的访问速度和预设速度进行对比,将所述并发网页访问业务中访问速度超过预设速度的网页访问业务的优先处理等级降低。
6.如权利要求1所述的一种处理并发网页访问业务的系统,其特征在于,所述Nginx层具体包括:
防刷模块,用于对所述并发网页访问业务执行防刷策略,以滤除由终端设备恶意刷新生成的网页访问业务。
7.如权利要求1所述的一种处理并发网页访问业务的系统,其特征在于,所述Nginx层具体包括:
IP黑名单模块,用于对所述并发网页访问业务执行IP地址对比,滤除IP地址存在于IP黑名单上的网页访问业务。
8.如权利要求1所述的一种处理并发网页访问业务的系统,其特征在于,所述Nginx层具体包括:
用户黑名单模块,用于对所述并发网页访问业务执行用户名对比,滤除用户名存在于用户黑名单上的网页访问业务。
9.如权利要求1-8任一权项所述的一种处理并发网页访问业务的系统,其特征在于,所述Nginx层具体包括:
管理线程工作项队列,用于对滤除之后获得的剩余网页访问业务进行排序。
10.一种处理并发网页访问业务的方法,其特征在于,所述方法应用于权利要求1-9任一权项的一种处理并发网页访问业务的系统,所述方法包括:
所述负载均衡层均衡分配传输通道供并发网页访问业务通行,所述并发网页访问业务由各终端设备在同一时间段并行发送网页访问业务形成;
所述Nginx层处理所述并发网页访问业务中并发要求高且逻辑简单的网页访问业务;
所述php-fpm层处理所述并发网页访问业务中并发要求低且逻辑复杂的网页访问业务。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810031751.8A CN108366021B (zh) | 2018-01-12 | 2018-01-12 | 一种处理并发网页访问业务的方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810031751.8A CN108366021B (zh) | 2018-01-12 | 2018-01-12 | 一种处理并发网页访问业务的方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108366021A true CN108366021A (zh) | 2018-08-03 |
CN108366021B CN108366021B (zh) | 2022-04-01 |
Family
ID=63006103
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810031751.8A Expired - Fee Related CN108366021B (zh) | 2018-01-12 | 2018-01-12 | 一种处理并发网页访问业务的方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108366021B (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109460389A (zh) * | 2018-11-29 | 2019-03-12 | 四川长虹电器股份有限公司 | 一种基于openresty的日志记录方法 |
CN110888704A (zh) * | 2019-11-08 | 2020-03-17 | 北京浪潮数据技术有限公司 | 一种高并发接口处理方法、装置、设备及存储介质 |
CN111431969A (zh) * | 2020-02-28 | 2020-07-17 | 平安科技(深圳)有限公司 | 连接池的统一部署系统及方法 |
CN112272100A (zh) * | 2020-08-04 | 2021-01-26 | 淘宝(中国)软件有限公司 | 一种针对在线平台局部业务需求的高可用流量调控方法和装置 |
CN112905332A (zh) * | 2019-12-03 | 2021-06-04 | 杭州电子科技大学富阳电子信息研究院有限公司 | 一种基于LVS负载均衡Django架构实现英文PDF在线快速翻译方法 |
CN113626011A (zh) * | 2021-07-21 | 2021-11-09 | 北京万维之道信息技术有限公司 | 基于php架构的数据请求处理方法、装置和设备 |
CN113836468A (zh) * | 2021-09-27 | 2021-12-24 | 山东亿云信息技术有限公司 | 利用nginx和redis提升价格指数网站访问吞吐量的方法及系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106453669A (zh) * | 2016-12-27 | 2017-02-22 | Tcl集团股份有限公司 | 一种负载均衡方法及一种服务器 |
US20170264666A1 (en) * | 2016-03-10 | 2017-09-14 | Synology Incorporated | Method and associated server for providing user-friendly operation |
CN107306292A (zh) * | 2016-04-25 | 2017-10-31 | 北京京东尚科信息技术有限公司 | 服务端网页包含实现方法和装置 |
CN107426341A (zh) * | 2017-09-13 | 2017-12-01 | 北京智芯微电子科技有限公司 | App与服务端交互的系统及方法 |
-
2018
- 2018-01-12 CN CN201810031751.8A patent/CN108366021B/zh not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170264666A1 (en) * | 2016-03-10 | 2017-09-14 | Synology Incorporated | Method and associated server for providing user-friendly operation |
CN107306292A (zh) * | 2016-04-25 | 2017-10-31 | 北京京东尚科信息技术有限公司 | 服务端网页包含实现方法和装置 |
CN106453669A (zh) * | 2016-12-27 | 2017-02-22 | Tcl集团股份有限公司 | 一种负载均衡方法及一种服务器 |
CN107426341A (zh) * | 2017-09-13 | 2017-12-01 | 北京智芯微电子科技有限公司 | App与服务端交互的系统及方法 |
Non-Patent Citations (2)
Title |
---|
吴锐: "高并发Web系统的设计与应用", 《电脑知识与技术》 * |
陈沛等: "一种基于Nginx的负载均衡算法实现", 《电子设计工程》 * |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109460389A (zh) * | 2018-11-29 | 2019-03-12 | 四川长虹电器股份有限公司 | 一种基于openresty的日志记录方法 |
CN109460389B (zh) * | 2018-11-29 | 2021-08-06 | 四川长虹电器股份有限公司 | 一种基于openresty的日志记录方法 |
CN110888704A (zh) * | 2019-11-08 | 2020-03-17 | 北京浪潮数据技术有限公司 | 一种高并发接口处理方法、装置、设备及存储介质 |
CN112905332A (zh) * | 2019-12-03 | 2021-06-04 | 杭州电子科技大学富阳电子信息研究院有限公司 | 一种基于LVS负载均衡Django架构实现英文PDF在线快速翻译方法 |
CN111431969A (zh) * | 2020-02-28 | 2020-07-17 | 平安科技(深圳)有限公司 | 连接池的统一部署系统及方法 |
CN112272100A (zh) * | 2020-08-04 | 2021-01-26 | 淘宝(中国)软件有限公司 | 一种针对在线平台局部业务需求的高可用流量调控方法和装置 |
CN113626011A (zh) * | 2021-07-21 | 2021-11-09 | 北京万维之道信息技术有限公司 | 基于php架构的数据请求处理方法、装置和设备 |
CN113626011B (zh) * | 2021-07-21 | 2024-02-13 | 北京万维之道信息技术有限公司 | 基于php架构的数据请求处理方法、装置和设备 |
CN113836468A (zh) * | 2021-09-27 | 2021-12-24 | 山东亿云信息技术有限公司 | 利用nginx和redis提升价格指数网站访问吞吐量的方法及系统 |
CN113836468B (zh) * | 2021-09-27 | 2024-05-07 | 山东亿云信息技术有限公司 | 利用nginx和redis提升价格指数网站访问吞吐量的方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN108366021B (zh) | 2022-04-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108366021A (zh) | 一种处理并发网页访问业务的方法及系统 | |
CN110636103B (zh) | 一种多异构集群作业统一调度方法及api接口 | |
CN106899680B (zh) | 多区块链的分片处理方法和装置 | |
CN110149396A (zh) | 一种基于微服务架构的物联网平台构建方法 | |
CN105245373B (zh) | 一种容器云平台系统的搭建及运行方法 | |
CN104850450B (zh) | 一种面向混合云应用的负载均衡方法及系统 | |
CN110266716B (zh) | 电网统一服务平台系统 | |
CN109062658A (zh) | 实现计算资源服务化的调度方法、装置、介质、设备及系统 | |
US9015227B2 (en) | Distributed data processing system | |
CN108206852A (zh) | 一种微服务框架下的基于会话的服务实例管理方法及设备 | |
CN106534318B (zh) | 一种基于流量亲和性的OpenStack云平台资源动态调度系统和方法 | |
CN109800137A (zh) | 一种服务器性能测试方法和系统 | |
CN107729139A (zh) | 一种并发获取资源的方法和装置 | |
CN102281190A (zh) | 负载均衡装置组网方法以及服务器、客户端接入方法 | |
JP2002044261A (ja) | 階層化された制御アーキテクチャを持つマルチメディア顧客ケアセンタ | |
CN108696400A (zh) | 网络监测方法和装置 | |
CN104503832B (zh) | 一种公平和效率均衡的虚拟机调度系统及方法 | |
Mangues-Bafalluy et al. | 5G-TRANSFORMER Service Orchestrator: design, implementation, and evaluation | |
CN113011678A (zh) | 基于边缘计算的虚拟运营平台运行控制方法 | |
CN110658794A (zh) | 一种制造执行系统 | |
US20200028795A1 (en) | Distributed multi-tenant network real-time model for cloud based enterprise resource planning solutions | |
CN103677983B (zh) | 应用的调度方法及装置 | |
CN108881509A (zh) | 一种基于httpdns的dns查询方法及装置 | |
Huang et al. | Converged network-cloud service composition with end-to-end performance guarantee | |
CN110351311A (zh) | 负载均衡方法及计算机存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20220401 |