CN108366060B - 服务器访问方法、装置、设备及计算机可读存储介质 - Google Patents

服务器访问方法、装置、设备及计算机可读存储介质 Download PDF

Info

Publication number
CN108366060B
CN108366060B CN201810127459.6A CN201810127459A CN108366060B CN 108366060 B CN108366060 B CN 108366060B CN 201810127459 A CN201810127459 A CN 201810127459A CN 108366060 B CN108366060 B CN 108366060B
Authority
CN
China
Prior art keywords
access
user account
server
qualification
layer
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.)
Active
Application number
CN201810127459.6A
Other languages
English (en)
Other versions
CN108366060A (zh
Inventor
巫绍堂
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ping An Puhui Enterprise Management Co Ltd
Original Assignee
Ping An Puhui Enterprise Management Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Ping An Puhui Enterprise Management Co Ltd filed Critical Ping An Puhui Enterprise Management Co Ltd
Priority to CN201810127459.6A priority Critical patent/CN108366060B/zh
Publication of CN108366060A publication Critical patent/CN108366060A/zh
Application granted granted Critical
Publication of CN108366060B publication Critical patent/CN108366060B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0884Network architectures or network communication protocols for network security for authentication of entities by delegation of authentication, e.g. a proxy authenticates an entity to be authenticated on behalf of this entity vis-à-vis an authentication entity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0876Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/102Entity profiles

Abstract

本发明公开一种服务器访问方法、装置、设备及计算机可读存储介质,所述方法包括:当接收到用户账户通过客户端对服务器的访问请求时,读取nginx层中降级开关的状态,以判断nginx层的降级开关是否打开;当nginx层的降级开关打开时,确定用户账户属性;根据用户账户属性,确定用户账户对服务器的访问资质,并根据访问资质控制用户账户对服务器进行访问或拒绝访问。本方案通过对服务器设置用于控制访问量的降级开关,当降级开关打开时,根据发起访问请求的用户账户属性,确定用户账户对服务器的访问资质。对访问资质为拒绝访问的用户账户进行拒绝,实现对服务器的访问量控制,避免访问量过大而导致的网页崩溃、网站瘫痪的现象。

Description

服务器访问方法、装置、设备及计算机可读存储介质
技术领域
本发明主要涉及网络通信技术领域,具体地说,涉及一种服务器访问方法、装置、设备及计算机可读存储介质。
背景技术
随着网络技术的发展,接入互联网访问服务器,获取网络资源的用户日益剧增,但用于为接入互联网用户服务的服务器资源有限,巨大的访问量增加了服务器的压力,出现网页崩溃,网站瘫痪的现象,导致访问服务器的用户获取资源失败,降低用户体验。
发明内容
本发明的主要目的是提供一种服务器访问方法、装置、设备及计算机可读存储介质,旨在解决现有技术中服务器资源有限,在访问量大时出现网页崩溃、网站瘫痪的问题。
为实现上述目的,本发明提供一种服务器访问方法,所述服务器访问方法包括以下步骤:
当接收到用户账户通过客户端对服务器的访问请求时,读取nginx层中降级开关的状态,以判断所述nginx层的降级开关是否打开,所述nginx层为预设在所述客户端和所述服务器之间的代理服务器;
当nginx层的降级开关打开时,确定用户账户属性;
根据用户账户属性,确定用户账户对服务器的访问资质,并根据访问资质控制用户账户对服务器进行访问或拒绝访问。
优选地,所述服务器包括应用层,所述当nginx层的降级开关打开时,确定用户账户属性的步骤包括:
当nginx层的降级开关打开时,读取用户账户所携带的账户标识符,并将所述账户标识符和nginx层以及应用层中的各缓存记录标识符匹配,以判断用户账户在nginx层和/或应用层中是否存在访问记录;
当用户账户在nginx层和/或应用层中存在访问记录时,则将用户账户属性确定为登记用户账户;
当用户账户在nginx层和/或应用层中不存在访问记录时,则将用户账户属性确定为未登记用户账户。
优选地,所述根据用户账户属性,确定用户账户对服务器的访问资质,并根据访问资质控制用户账户对服务器进行访问或拒绝访问的步骤包括:
当用户账户属性为登记用户账户时,获取访问记录中的历史信息,确定历史信息中所述登记用户账户对服务器的访问资质;
当历史信息中登记用户账户对服务器的访问资质为允许访问时,则控制应用层或服务器提供与访问请求对应的访问;
当历史信息中登记用户账户对服务器的访问资质为拒绝访问时,则拒绝登记用户账户对服务器的访问请求。
优选地,所述控制应用层或服务器提供与访问请求对应的访问的步骤包括:
判断应用层中是否缓存与访问请求对应的待访问页面信息;
当应用层中缓存与访问请求对应的待访问页面信息时,则从应用层调用与访问请求对应的待访问页面信息进行显示;
当应用层中没有缓存与访问请求对应的待访问页面信息时,则根据访问请求对服务器进行访问。
优选地,所述根据用户账户属性,确定用户账户对服务器的访问资质的步骤包括:
当用户账户属性确定为未登记用户账户时,则判断应用层中是否缓存与访问请求对应的待访问页面信息;
当应用层中缓存有与访问请求对应的待访问页面信息时,则从应用层调用与访问请求对应的待访问页面信息进行显示;
当应用层中没有缓存与访问请求对应的待访问页面信息时,则根据应用层中的预设算法对未登记用户账户的访问资质进行判断。
优选地,所述根据应用层中的预设算法对未登记用户账户的访问资质进行判断的步骤包括:
对未登记用户账户生成随机数,判断随机数是否在预设区间内;
当随机数在预设区间内时,则判定未登记用户账户的访问资质为允许访问;
当随机数不在预设区间内时,则判定未登记用户账户的访问资质为拒绝访问;
将经判断所确定的未登记用户账户的访问资质缓存到应用层。
优选地,所述根据访问资质控制用户账户对服务器进行访问或拒绝访问的步骤包括:
当判定未登记用户账户的访问资质为允许访问时,则根据访问请求控制用户账户对服务器进行访问;
当判定未登记用户账户的访问资质为拒绝用户时,则拒绝未登记用户账户对服务器的访问请求。
此外,为实现上述目的,本发明还提出一种服务器访问装置,所述服务器访问装置包括:
判断模块,用于当接收到用户账户通过客户端对服务器的访问请求时,读取nginx层中降级开关的状态,以判断所述nginx层的降级开关是否打开,所述nginx层为预设在所述客户端和所述服务器之间的代理服务器;
确定模块,用于当nginx层的降级开关打开时,确定用户账户属性;
访问模块,用于根据用户账户属性,确定用户账户对服务器的访问资质,并根据访问资质控制用户账户对服务器进行访问或拒绝访问。
此外,为实现上述目的,本发明还提出一种服务器访问设备,所述服务器访问设备包括:存储器、处理器、通信总线以及存储在所述存储器上的服务器访问程序;
所述通信总线用于实现处理器和存储器之间的连接通信;
所述处理器用于执行所述服务器访问程序,以实现以下步骤:
当接收到用户账户通过客户端对服务器的访问请求时,读取nginx层中降级开关的状态,以判断所述nginx层的降级开关是否打开,所述nginx层为预设在所述客户端和所述服务器之间的代理服务器;
当nginx层的降级开关打开时,确定用户账户属性;
根据用户账户属性,确定用户账户对服务器的访问资质,并根据访问资质控制用户账户对服务器进行访问或拒绝访问。
此外,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者一个以上程序,所述一个或者一个以上程序可被一个或者一个以上的处理器执行以用于:
当接收到用户账户通过客户端对服务器的访问请求时,读取nginx层中降级开关的状态,以判断所述nginx层的降级开关是否打开,所述nginx层为预设在所述客户端和所述服务器之间的代理服务器;
当nginx层的降级开关打开时,确定用户账户属性;
根据用户账户属性,确定用户账户对服务器的访问资质,并根据访问资质控制用户账户对服务器进行访问或拒绝访问。
本实施例的服务器访问方法,当接收到用户账户通过客户端对服务器的访问请求时,读取nginx层中降级开关的状态,以判断nginx层的降级开关是否打开,若nginx层的降级开关打开,则进一步确定用户账户属性,以根据用户账户属性,确定用户账户对服务器的访问资质,从而根据此访问资质控制用户账户对服务器进行访问或拒绝访问。本方案通过对服务器设置nginx层, nginx层中设置有用于控制访问量的降级开关;当降级开关打开时,则说明有控制访问量的需求,根据发起访问请求的用户账户属性,确定用户账户所具有的对服务器进行访问或拒绝访问的访问资质。对访问资质为拒绝访问的用户账户所发起的访问请求进行拒绝,实现对服务器的访问量控制,避免访问量过大而导致网页崩溃、网站瘫痪的现象。
附图说明
图1是本发明的服务器访问方法第一实施例的流程示意图;
图2是本发明的服务器访问装置第一实施例的功能模块示意图;
图3是本发明实施例方法涉及的硬件运行环境的设备结构示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明实施例提供一种服务器访问方法。
请参照图1,图1为本发明服务器访问方法第一实施例的流程示意图。在本实施例中,所述服务器访问方法包括:
步骤S10,当接收到用户账户通过客户端对服务器的访问请求时,读取 nginx层中降级开关的状态,以判断所述nginx层的降级开关是否打开,所述 nginx层为预设在所述客户端和所述服务器之间的代理服务器;
本实施例的服务器设置有nginx层,nginx是兼容Linux系统、Windows NT 系统的高性能HTTP和反向代理服务器。在服务器之前设置nginx层,用户账户在通过客户端访问服务器之前需要先经过nginx层,nginx层中设置有控制访问量的降级开关。当服务器的访问量不大时,降级开关关闭,将用户账户的访问请求直接接入到服务器,对服务器进行访问。当服务器的访问量很大,影响服务器工作时,降级开关开启,对访问量进行控制。从而当接收到用户账户通过客户端对服务器的访问请求时,读取nginx层中降级开关的状态,以根据此降级开关的状态判断nginx层的降级开关是否打开。当降级开关的状态为开启时,则判定nginx层的降级开关打开,而当降级开关的状态为关闭时,则判定nginx层的降级开关没有打开。通过此降级开关的状态判断目前服务器是否因访问量巨大,而开启了访问量控制流程。而降级开关的开启与否可通过服务器的预设访问量与实际访问量之间的关系确定,如服务器的预设访问量为A,而其实际访问量为B,在B不大于0.8*A时,服务器所能提供各访问用户良好的访问体验;而大于时,则会影响各访问用户的访问体验,出现诸如响应慢、卡此类的现象。从而可设置在检测到B大于0.8A时,开启降级开关的机制,此降级开关的具体开启时机可根据实际访问情况设定。
步骤S20,当nginx层的降级开关打开时,确定用户账户属性;
进一步地,当判断出nginx层的降级开关开启,则说明目前服务器的访问压力大,需要进行访问量控制。可理解地,访问服务器的用户账户可能是初次访问服务器,在服务器中没有访问记录的未登记用户账户,也可能是此前访问过服务器,在服务器中有访问记录的登记用户账户,将此用户账户为未登记用户账户或登记用户账户的属性作为用户账户属性。当降级开关打开时,确定发起访问请求的用户账户所属的用户账户属性,以根据用户账户属性确定用户资质,其中确定用户账户属性的步骤包括:
步骤S21,当nginx层的降级开关打开时,读取用户账户所携带的账户标识符,并将所述账户标识符和nginx层以及应用层中的各缓存记录标识符匹配,以判断用户账户在nginx层和/或应用层中是否存在访问记录;
本实施例的服务器中还设置有应用层,应用层位于服务器与nginx层之间,是七层OSI模型的第七层,其直接和应用程序接口并提供常见的网络应用服务,本实施例中应用层结合nginx层一起进行访问量控制。在进行访问量控制时,访问服务器的用户账户分别经nginx层和应用层判断访问资质,nginx层和应用层中均设置有缓存单元,以对各用户账户的访问数据进行缓存。当用户账户发起过针对服务器的访问请求,即会在nginx层或应用层中缓存对应的访问记录,为了对各用户账户的访问记录进行区分,将各用户账户的账户标识符作为其缓存的访问记录的缓存记录标识符。账户标识符为表征各个账户唯一性的标识符,如账户ID,当用户账户首次对服务器进行访问时,读取其对应的标识符,将此标识符和生成的访问记录一并缓存。此外考虑到nginx层和应用层缓存单元容量的限制,从而对其中缓存的记录设置有LRU (LeastRecentlyUsed近期最少使用算法)移出机制,将存在于缓存单元中但长期不需要使用的访问记录移出缓存单元,以腾出缓存单元空间来存放其他访问记录。其中移出时机跟根据访问记录中各用户账户的访问情况确定,如访问记录中某一用户账户的访问记录已经有三个月尚未更新,即此用户账户在三个月内未发起对服务器的访问请求,则将其移出缓存单元。对于同一用户账户,nginx层和应用层中所缓存其访问记录的时间,或者移出时间可能不一致,出现所生成的访问记录仅存在与nginx层或应用层的情况,也可能nginx层和应用层中均存在。从而当降级开关打开时,读取用户账户所携带的账户标识符,将账户标识符和nginx层以及应用层中的各缓存记录标识符匹配,即判断用户账户在nginx成和/或应用层中是否存在访问记录,以确定此用户账户是初次访问服务器的未登记用户账户还是有访问记录的登记用户账户。
步骤S22,当用户账户在nginx层和/或应用层中存在访问记录时,则将用户账户属性确定为登记用户账户;
当账户标识符和nginx层以及应用层中的各缓存记录标识符对比匹配,判断出nginx层和/或应用层中的各缓存记录标识符存在与账户标识符对应的缓存记录标识符时,则说明发起访问请求的用户账户在nginx层和/或应用层中存在访问记录时,此用户账户为此前对服务器发起过访问请求的登记用户账户,从而将此用户账户的属性确定为登记用户账户,可根据其此前访问记录中历史信息确定其访问资质。
步骤S23,当用户账户在nginx层和/或应用层中不存在访问记录时,则将用户账户属性确定为未登记用户账户。
而当账户标识符和nginx层以及应用层中的各缓存记录标识符对比匹配,判断出nginx层和/或应用层中的各缓存记录标识符不存在与账户标识符对应的缓存记录标识符时,则说明发起访问请求的用户账户在nginx层和/或应用层中均不存在访问记录时,则说明此用户账户为此前没有对服务器发起过访问请求的未登记用户账户,从而将此用户账户的属性确定为未登记用户账户,需要对其的访问资质进行确定。
步骤S30,根据用户账户属性,确定用户账户对服务器的访问资质,并根据访问资质控制用户账户对服务器进行访问或拒绝访问。
进一步地,在确定用户账户属性后,则根据此用户账户属性确定用户账户对服务器的访问资质。因用户账户属性分为登记用户账户和未登记用户账户两种,针对此两种账户,对其访问资质的确定方式不相同。对于登记用户账户可根据其此前访问时历史信息中的访问资质进行确定,延续其此前访问时的访问资质。若此前具有访问服务器的资质,则目前仍然具有访问资质;若此前不具有访问服务器的资质,则目标仍然不具有访问资质。而对于未登记用户账户则根据目前设定的访问比例确定其访问资质,如目前设定仅有40%的未登记用户账户具有访问资质,则确定未登记用户账户所在的访问比例范围,若其在40%的访问比例内,则具有访问资质,否则不具有访问资质。在确定用户账户的访问资质后,根据此访问资质控制用户账户对服务器进行访问或拒绝访问;对于具有访问资质的用户账户,则接入服务器入口,以进行服务器访问;对于不具有访问资质的用户账户,则返回请求失败的返回信息,以拒绝访问服务器。
本实施例的服务器访问方法,当接收到用户账户通过客户端对服务器的访问请求时,读取nginx层中降级开关的状态,以判断nginx层的降级开关是否打开,若nginx层的降级开关打开,则进一步确定用户账户属性,以根据用户账户属性,确定用户账户对服务器的访问资质,从而根据此访问资质控制用户账户对服务器进行访问或拒绝访问。本方案通过对服务器设置nginx层, nginx层中设置有用于控制访问量的降级开关;当降级开关打开时,则说明有控制访问量的需求,根据发起访问请求的用户账户属性,确定用户账户所具有的对服务器进行访问或拒绝访问的访问资质。对访问资质为拒绝访问的用户账户所发起的访问请求进行拒绝,实现对服务器的访问量控制,避免访问量过大而导致网页崩溃、网站瘫痪的现象。
进一步地,在本发明服务器访问方法另一实施例中,所述根据用户账户属性,确定用户账户对服务器的访问资质,并根据访问资质控制用户账户对服务器进行访问或拒绝访问的步骤包括:
步骤S31,当用户账户属性为登记用户账户时,获取访问记录中的历史信息,确定历史信息中所述登记用户账户对服务器的访问资质;
可理解地,因此前对服务器发起过访问请求的登记用户账户,在nginx层和/或应用层中缓存过访问记录,而访问记录中包括此登记用户账户是否具有访问资格的历史信息。从而当判断出用户账户为登记用户账户时,则获取访问记录中的历史信息,对此获取的历史信息进行分析,确定此前登记用户账户对服务器的访问资质。
步骤S32,当历史信息中登记用户账户对服务器的访问资质为允许访问时,则控制应用层或服务器提供与访问请求对应的访问;
当确定历史信息中登记用户账户对服务器的访问资质为允许访问,登记用户账户此前具有对服务器的访问资质时,则其当前的访问资质仍然为允许访问,可对其访问请求所对应的待访问页面进行访问。访问请求用于请求访问服务器的某一内容,此内容以网页的形式显示,将显示此内容的网页作为待访问页面,访问资质为允许访问的用户账户则可对此待访问页面进行访问。此外,为了进一步缓解服务器的访问压力,本实施例设置有对待访问页面的页面信息的缓存机制。当统计到各用户账户对某待访问页面的访问量较高,则说明此待访问页面为大多数用户账户所需求访问的页面,将此访问量较高的待访问页面信息缓存到应用层,而其他访问量相对较低的待访问页面信息则需要从服务器获取。从而本实施例在确定登记用户账户的访问资质为允许访问时,则控制应用层或服务器提供与其访问请求对应的访问,将与访问请求对应的待访问页面信息提供给用户账户显示。具体地,控制应用层或服务器提供与访问请求对应的访问的步骤包括:
步骤S321,判断应用层中是否缓存与访问请求对应的待访问页面信息;
因应用层中对访问量较高的待访问页面信息进行缓存,从而在确定登记用户账户的访问资质为允许访问时,则进一步判断应用层中是否缓存有与此访问请求对应的待访问页面信息,以确定是否可以直接从应用层中读取与访问请求对应的待访问页面信息,避免对服务器的访问,增加其访问压力。此外考虑到应用层中可能缓存有多个待访问页面的页面信息,需要从应用层所缓存的待访问页面信息中确定与访问请求所对应的待访问页面信息,为了对各待访问页面进行区分,对各个待访问页面设置有表征其唯一性的标识符,访问请求中也携带有此标识符,以表征访问请求用于对此待访问页面的访问。而应用层在对各待访问页面信息的缓存时,为了区分各缓存的待访问页面信息,对各待访问页面信息也设置表征其唯一性的标识符,此标识符与待访问页面一致。即对于同一待访问页面,其访问请求以及页面信息均携带有此待访问页面的标识符。从而当应用层接收到访问请求时,获取此访问请求对应的标识符,并判断应用层中是否缓存有携带此标识符的待访问页面信息。
步骤S322,当应用层中缓存与访问请求对应的待访问页面信息时,则从应用层调用与访问请求对应的待访问页面信息进行显示;
当判断出应用层中缓存有携带此标识符的待访问页面信息时,此待访问页面信息为登记用户账户发起访问请求所需要访问的待访问页面的页面信息。即应用层中缓存有与访问请求对应的待访问页面信息,从而直接从应用层中调用此待访问页面信息,将其发送到登记用户账户用于发送访问请求的终端界面进行显示。避免将访问请求与服务器对接,减缓服务器访问压力的同时,还提高了对访问请求的响应速度。
步骤S323,当应用层中没有缓存与访问请求对应的待访问页面信息时,则根据访问请求对服务器进行访问。
而当通过访问请求中所携带的标识符,确定应用层中没有缓存具有此标识符的待访问页面信息时,则说明应用层中没有缓存与访问请求对应的待访问页面信息,登记用户账户不能通过应用层访问其需要访问的待访问页面。此时将访问请求与服务器对接,引导登记用户账户对服务器进行访问。
步骤S33,当历史信息中登记用户账户对服务器的访问资质为拒绝访问时,则拒绝登记用户账户对服务器的访问请求。
当确定历史信息中登记用户账户对服务器的访问资质为拒绝访问,登记用户账户此前不具有对服务器的访问资质时,则其当前的访问资质仍然为拒绝访问,不能对其访问请求所对应的待访问页面进行访问。向此用户账户用于发送访问请求的终端界面返回请求失败的返回信息,以拒绝其访问服务器。
进一步地,在本发明服务器访问方法另一实施例中,所述根据用户账户属性,确定用户账户对服务器的访问资质的步骤包括:
步骤S34,当用户账户属性确定为未登记用户账户时,则判断应用层中是否缓存与访问请求对应的待访问页面信息;
当在nginx层和/或应用层中均没有缓存过访问记录,用户账户属性为未登记用户账户时,考虑到此未登记用户账户所需要访问的页面可能缓存于应用层中,此时并不需要将用户账户的访问请求接入到服务器,不会增加服务器压力。从而本实施例在确定用户账户属性为未登记用户账户后,同样通过访问请求中所携带的标识符判断应用层中是否缓存与访问请求对应的待访问页面信息。
步骤S35,当应用层中缓存有与访问请求对应的待访问页面信息时,则从应用层调用与访问请求对应的待访问页面信息进行显示;
获取访问请求中所携带的标识符,判断应用层中是否缓存有携带此标识符的待访问页面信息。当应用层中缓存有携带此标识符的待访问页面信息时,此待访问页面信息为未登记用户账户发起访问请求所需要访问的待访问页面的页面信息。即应用层中缓存有与访问请求对应的待访问页面信息,从而直接从应用层中调用此待访问页面信息,将其发送到未登记用户账户用于发送访问请求的终端界面进行显示。避免对未登记用户账户的访问资质判断以及对服务器的访问,直接将未登记用户账户需要访问的资源分配到其终端界面显示,减缓服务器访问压力的同时,提高了对访问请求的响应速度,提升了用户体验。
步骤S36,当应用层中没有缓存与访问请求对应的待访问页面信息时,则根据应用层中的预设算法对未登记用户账户的访问资质进行判断。
而当通过访问请求中所携带的标识符,确定应用层中没有缓存具有此标识符的待访问页面信息时,则说明应用层中没有缓存与访问请求对应的待访问页面信息,未登记用户账户不能通过应用层访问其需要访问的待访问页面。此时需要对未登记用户账户的访问资质进行判断,以确定此未登记用户账户是否具有访问服务器的资质。应用层中设置有预设算法,此预设算法为预先设置的,可根据其对未登记用户账户的访问资质进行判断。具体地,根据应用层中的预设算法对未登记用户账户的访问资质进行判断的步骤包括:
步骤S361,对未登记用户账户生成随机数,判断随机数是否在预设区间内;
为了减缓服务器的访问压力,对初次访问服务的未登记用户账户设置限制访问数量的机制。具体地,对未登记用户账户生成随机数并设定预设区间,将随机数和预设区间比较,判断随机数是否在预设区间内。只有在预设区间内的随机数才具有访问资质,而在预设区间外的随机数不具有访问资质,以限制具有预设区间外随机数的未登记用户账户的访问。此外虽然预设区间为一定数值的范围,但是可能大量未登记用户账户所生成随机数均落在此预设区间内,导致具有访问资质的未登记用户账户数量众多,服务器的访问压力仍然巨大。从而设定所生成随机数的范围,且在此范围内每个数值只能生成一次,预设区间为此生成随机数范围的子集,当此范围内所有数值均生成了一次之后;对后续的未登记用户账户的重新以此随机数范围为基础进行生成,直到随机数范围内所有随机数均又生成了一次,再进行下一次循环,以保证发起访问请求的未登记用户账户中具有特定比例的未登记用户账户具有访问资质。如设定随机数生成范围为0~100,其中预设区间为70~100,当接收到第一个未登记用户账户所发送的访问请求时,向此第一个未登记用户账户随机分配0~100中唯一的任意数值,同样的向第二个未登记用户账户随机分配 0~100中唯一的任意数值,且两者之间的随机数不相同,直到0~100之间的数据均分配完成,即完成第一批100个未登记用户账户的随机数分配,对后续的未登记用户账户开始新一轮的0~100之间的随机数分配。在分配的过程中,将各未登记用户账户所分配的随机数和预设区间对比,将随机数在70~100之间的未登记用户账户确定为具有服务器的访问资质,其他的则不具有,以确保有30%的未登记用户账户具有访问资质,其他的70%则不具有,以减缓服务器的访问压力。
步骤S362,当随机数在预设区间内时,则判定未登记用户账户的访问资质为允许访问;
当经判断未登记用户账户所生成的随机数在预设区间时,则可判定此未登记用户账户的访问资质为允许访问,其具有对服务器的访问资质。从而将此未登记用户账户所发起的访问请求与服务器对接,引导未登记用户账户对服务器进行访问。
步骤S363,当随机数不在预设区间内时,则判定未登记用户账户的访问资质为拒绝访问;
当经判断未登记用户账户所生成的随机数不在预设区间时,则可判定此未登记用户账户的访问资质为拒绝访问,其不具有对服务器的访问资质。向此未登记用户账户用于发送访问请求的终端界面返回请求失败的返回信息,以拒绝其访问服务器。
步骤S364,将经判断所确定的未登记用户账户的访问资质缓存到应用层。
在判断出未登记用户账户的访问资质后,将此访问资质与未登记用户账户一并缓存到应用层。后续在接收到此用户账户再次发起访问请求时,因其对应的访问资质缓存在应用层,而不是nginx层中,从而先经过nginx层,读取其中缓存的访问记录判断此用户账户的访问资质时,并不能读取到与此用户账户所对应的访问资质。进一步经过应用层,读取其中缓存的访问记录进行判断,因此用户初次访问所生成的访问资质存储在应用层中,应用层中有与此用户账户对应的访问资质,即可读取其确定用户账户的访问资质。同时将从应用层中所读取的用户账户对应的访问资质缓存到nginx层中,以便后续再接收到此用户账户所发起的访问请求时,通过nginx层即可确定此用户账户是否具有访问资质。如果具有访问资质,则进入到应用层处理,而如果不具有访问资质,则在nginx层对其返回请求失败的返回信息,避免后续流程,加快处理速度。
此外,请参照图2,本发明提供一种服务器访问装置,在本发明服务器访问装置第一实施例中,所述服务器访问装置包括:
判断模块10,用于当接收到用户账户通过客户端对服务器的访问请求时,读取nginx层中降级开关的状态,以判断所述nginx层的降级开关是否打开,所述nginx层为预设在所述客户端和所述服务器之间的代理服务器;
确定模块20,用于当nginx层的降级开关打开时,确定用户账户属性;
访问模块30,用于根据用户账户属性,确定用户账户对服务器的访问资质,并根据访问资质控制用户账户对服务器进行访问或拒绝访问。
本实施例的服务器访问装置,当接收到用户账户通过客户端对服务器的访问请求时,判断模块10读取nginx层中降级开关的状态,以判断nginx层的降级开关是否打开,若nginx层的降级开关打开,则确定模块20进一步确定用户账户属性,以根据用户账户属性,确定用户账户对服务器的访问资质,从而访问模块30根据此访问资质控制用户账户对服务器进行访问或拒绝访问。本方案通过对服务器设置nginx层,nginx层中设置有用于控制访问量的降级开关;当降级开关打开时,则说明有控制访问量的需求,根据发起访问请求的用户账户属性,确定用户账户所具有的对服务器进行访问或拒绝访问的访问资质。对访问资质为拒绝访问的用户账户所发起的访问请求进行拒绝,实现对服务器的访问量控制,避免访问量过大而导致网页崩溃、网站瘫痪的现象。
参照图3,图3是本发明实施例方法涉及的硬件运行环境的设备结构示意图。
本发明实施例服务器访问设备可以是PC,也可以是智能手机、平板电脑、电子书阅读器、便携计算机等终端设备。
如图3所示,该服务器访问设备可以包括:处理器1001,例如CPU,存储器1005,通信总线1002。其中,通信总线1002用于实现处理器1001和存储器1005之间的连接通信。存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
可选地,该服务器访问设备还可以包括用户接口、网络接口、摄像头、 RF(RadioFrequency,射频)电路,传感器、音频电路、WiFi模块等等。用户接口可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口还可以包括标准的有线接口、无线接口。网络接口可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。
本领域技术人员可以理解,图3中示出的服务器访问设备结构并不构成对服务器访问设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图3所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块以及服务器访问程序。操作系统是管理和控制服务器访问设备硬件和软件资源的程序,支持服务器访问程序以及其它软件和/或程序的运行。网络通信模块用于实现存储器1005内部各组件之间的通信,以及与服务器访问设备中其它硬件和软件之间通信。
在图3所示的服务器访问设备中,处理器1001用于执行存储器1005中存储的服务器访问程序,以实现上述服务器访问方法,本发明服务器访问设备具体实施方式与上述服务器访问方法各实施例基本相同,在此不再赘述。
本发明提供了一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者一个以上程序,所述一个或者一个以上程序还可被一个或者一个以上的处理器执行以用于实现上述服务器访问方法,本发明计算机可读存储介质具体实施方式与上述服务器访问方法各实施例基本相同,在此不再赘述。
还需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
以上所述仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是在本发明的构思下,利用本发明说明书及附图内容所作的等效结构变换,或直接/间接运用在其他相关的技术领域均包括在本发明的专利保护范围内。

Claims (9)

1.一种服务器访问方法,其特征在于,所述服务器包括nginx层,所述服务器访问方法包括以下步骤:
当接收到用户账户通过客户端对服务器的访问请求时,读取nginx层中降级开关的状态,以判断所述nginx层的降级开关是否打开,所述nginx层为预设在所述客户端和所述服务器之间的代理服务器;
当nginx层的降级开关打开时,确定用户账户属性;
根据用户账户属性,确定用户账户对服务器的访问资质,并根据访问资质控制用户账户对服务器进行访问或拒绝访问;
其中,所述服务器包括应用层,所述用户账户属性包括未登记用户账户;
所述根据用户账户属性,确定用户账户对服务器的访问资质的步骤包括:
根据设定的生成随机数的范围,对未登记用户账户生成随机数,判断随机数是否在预设区间内,其中预设区间为生成随机数的范围的子集,且范围内每个数值只能生成一次随机数;
当随机数在预设区间内时,则判定未登记用户账户的访问资质为允许访问;
当随机数不在预设区间内时,则判定未登记用户账户的访问资质为拒绝访问;
将经判断所确定的未登记用户账户的访问资质缓存到应用层。
2.如权利要求1所述的服务器访问方法,其特征在于,所述当nginx层的降级开关打开时,确定用户账户属性的步骤包括:
当nginx层的降级开关打开时,读取用户账户所携带的账户标识符,并将所述账户标识符和nginx层以及应用层中的各缓存记录标识符匹配,以判断用户账户在nginx层和/或应用层中是否存在访问记录;
当用户账户在nginx层和/或应用层中存在访问记录时,则将用户账户属性确定为登记用户账户;
当用户账户在nginx层和/或应用层中不存在访问记录时,则将用户账户属性确定为未登记用户账户。
3.如权利要求2所述的服务器访问方法,其特征在于,所述根据用户账户属性,确定用户账户对服务器的访问资质,并根据访问资质控制用户账户对服务器进行访问或拒绝访问的步骤包括:
当用户账户属性为登记用户账户时,获取访问记录中的历史信息,确定历史信息中所述登记用户账户对服务器的访问资质;
当历史信息中登记用户账户对服务器的访问资质为允许访问时,则控制应用层或服务器提供与访问请求对应的访问;
当历史信息中登记用户账户对服务器的访问资质为拒绝访问时,则拒绝登记用户账户对服务器的访问请求。
4.如权利要求3所述的服务器访问方法,其特征在于,所述控制应用层或服务器提供与访问请求对应的访问的步骤包括:
判断应用层中是否缓存与访问请求对应的待访问页面信息;
当应用层中缓存与访问请求对应的待访问页面信息时,则从应用层调用与访问请求对应的待访问页面信息进行显示;
当应用层中没有缓存与访问请求对应的待访问页面信息时,则根据访问请求对服务器进行访问。
5.如权利要求2所述的服务器访问方法,其特征在于,所述根据用户账户属性,确定用户账户对服务器的访问资质的步骤包括:
当用户账户属性确定为未登记用户账户时,则判断应用层中是否缓存与访问请求对应的待访问页面信息;
当应用层中缓存有与访问请求对应的待访问页面信息时,则从应用层调用与访问请求对应的待访问页面信息进行显示;
当应用层中没有缓存与访问请求对应的待访问页面信息时,则执行根据设定的生成随机数的范围,对未登记用户账户生成随机数的步骤。
6.如权利要求1所述的服务器访问方法,其特征在于,所述根据访问资质控制用户账户对服务器进行访问或拒绝访问的步骤包括:
当判定未登记用户账户的访问资质为允许访问时,则根据访问请求控制用户账户对服务器进行访问;
当判定未登记用户账户的访问资质为拒绝用户时,则拒绝未登记用户账户对服务器的访问请求。
7.一种服务器访问装置,其特征在于,所述服务器访问装置包括:
判断模块,用于当接收到用户账户通过客户端对服务器的访问请求时,读取nginx层中降级开关的状态,以判断所述nginx层的降级开关是否打开,所述nginx层为预设在所述客户端和所述服务器之间的代理服务器;
确定模块,用于当nginx层的降级开关打开时,确定用户账户属性;
访问模块,用于根据用户账户属性,确定用户账户对服务器的访问资质,并根据访问资质控制用户账户对服务器进行访问或拒绝访问;
其中,所述服务器包括应用层,所述用户账户属性包括未登记用户账户;
所述访问模块还包括:
根据设定的生成随机数的范围,对未登记用户账户生成随机数,判断随机数是否在预设区间内,其中预设区间为生成随机数的范围的子集,且范围内每个数值只能生成一次随机数;
当随机数在预设区间内时,则判定未登记用户账户的访问资质为允许访问;
当随机数不在预设区间内时,则判定未登记用户账户的访问资质为拒绝访问;
将经判断所确定的未登记用户账户的访问资质缓存到应用层。
8.一种服务器访问设备,其特征在于,所述服务器访问设备包括:存储器、处理器、通信总线以及存储在所述存储器上的服务器访问程序;
所述通信总线用于实现处理器和存储器之间的连接通信;
所述处理器用于执行所述服务器访问程序,以实现如权利要求1-6中任一项所述的服务器访问方法的步骤。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有服务器访问程序,所述服务器访问程序被处理器执行时实现如权利要求1-6中任一项所述的服务器访问方法的步骤。
CN201810127459.6A 2018-02-07 2018-02-07 服务器访问方法、装置、设备及计算机可读存储介质 Active CN108366060B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810127459.6A CN108366060B (zh) 2018-02-07 2018-02-07 服务器访问方法、装置、设备及计算机可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810127459.6A CN108366060B (zh) 2018-02-07 2018-02-07 服务器访问方法、装置、设备及计算机可读存储介质

Publications (2)

Publication Number Publication Date
CN108366060A CN108366060A (zh) 2018-08-03
CN108366060B true CN108366060B (zh) 2021-01-05

Family

ID=63005244

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810127459.6A Active CN108366060B (zh) 2018-02-07 2018-02-07 服务器访问方法、装置、设备及计算机可读存储介质

Country Status (1)

Country Link
CN (1) CN108366060B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109714265B (zh) * 2018-12-25 2021-03-02 广州方硅信息技术有限公司 一种终端限流方法、服务器、系统及存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104468269A (zh) * 2014-12-01 2015-03-25 郭丹 一种基于Android终端设备的定向流量监管方法
CN107222426A (zh) * 2016-03-21 2017-09-29 阿里巴巴集团控股有限公司 控流的方法、装置及系统

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10778744B2 (en) * 2015-08-13 2020-09-15 Molbase (Shanghai) Biotechnology Co., Ltd. Configurable caching system and method thereof
CN107241300B (zh) * 2016-03-29 2020-11-03 北京京东尚科信息技术有限公司 用户请求的拦截方法和装置
CN106656959B (zh) * 2016-09-28 2020-07-28 腾讯科技(深圳)有限公司 访问请求调控方法和装置
CN107222567A (zh) * 2017-07-07 2017-09-29 北京京东尚科信息技术有限公司 处理数据请求的方法、装置及服务集群

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104468269A (zh) * 2014-12-01 2015-03-25 郭丹 一种基于Android终端设备的定向流量监管方法
CN107222426A (zh) * 2016-03-21 2017-09-29 阿里巴巴集团控股有限公司 控流的方法、装置及系统

Also Published As

Publication number Publication date
CN108366060A (zh) 2018-08-03

Similar Documents

Publication Publication Date Title
US11128621B2 (en) Method and apparatus for accessing website
CN104978267B (zh) 网页测试方法、终端及服务器
CN111462281A (zh) 海报生成方法、装置、设备及存储介质
CN107241300B (zh) 用户请求的拦截方法和装置
CN106790172B (zh) 一种文件共享方法及服务器、客户端
WO2020228038A1 (zh) 域名处理方法、装置、电子设备以及存储介质
CN111372115B (zh) 应用程序的访问方法及装置、通讯系统
CN104980512A (zh) 一种基于移动应用提供目标对象的方法与设备
CN104484482A (zh) 网络平台的网页信息更新方法及系统
CN109669718A (zh) 系统权限配置方法、装置、设备及存储介质
CN108023867A (zh) 移动端网页广告过滤的方法、网关服务器及过滤服务器
CN107197359A (zh) 视频文件缓存方法及装置
US20230236853A1 (en) Client side browser-based caching for monitored resources
CN106446075A (zh) 页面请求处理方法及装置
US20140006918A1 (en) Method and system for web page rearrangement
CN109495553A (zh) 一种网页显示控制方法、系统及反向代理服务器
CN103581878B (zh) 一种用于在移动设备中获取目标资源的方法和设备
CN108366060B (zh) 服务器访问方法、装置、设备及计算机可读存储介质
CN108200127A (zh) 数据发送方法、装置、服务器、终端及存储介质
CN110321321B (zh) 网络块设备快照读写方法、装置、设备及存储介质
CN104468635A (zh) 网络平台的用户权限升级认证方法及系统
CN106302002B (zh) 测试方法及装置
US10965781B2 (en) Method and server for displaying access content
CN108108458A (zh) 基于域名共享人才资源数据的方法及装置
CN110324366B (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