
1.本发明涉及分布式技术领域,具体涉及一种服务端的访问控制方法、装置、计算机设备及存储介质。
背景技术:2.分布式文件系统是指将文件系统管理的物理存储资源存放在节点集群中,通过计算机网络将各节点连接起来,进而经过一定的运算,形成一套逻辑上的树形文件系统结构,从而使用户访问分布在网络上的共享文件更加简便。
3.在实际应用中,用户可以从客户端通过挂载文件系统的服务端,实现对文件系统的访问,进而对文件系统中的物理存储资源执行读/写等操作。同一文件系统可以实现被多个客户端进行多次访问。
4.相关技术中,为防止客户端连接服务端的次数过多导致服务端超负载运行,则预先限制服务端的总连接数,进而实现对服务端的访问限制。但采用该种方法控制服务端的连接数量,只能确定与文件系统建立连接的连接数,无法确定客户端与文件系统之间的连接情况。
技术实现要素:5.因此,本发明要解决的技术问题在于克服现有技术中通过对文件系统的总连接数进行限制,无法确定客户端与文件系统之间的连接情况的缺陷,从而提供一种文件系统访问控制方法、装置、计算机设备及存储介质。
6.根据第一方面,本发明提供一种服务端的访问控制方法,所述方法包括:
7.接收目标客户端用于与所述服务端建立连接的连接请求,所述目标客户端的目标ip地址预先配置有第一连接数阈值,所述第一连接数阈值为所述目标ip地址对应的多个客户端与所述服务端建立连接的最大连接数;
8.获取所述目标ip地址的当前连接数记录,确定所述目标ip地址的剩余连接数;
9.根据所述剩余连接数,确定是否与所述目标客户端建立连接。
10.在该方式中,能够通过目标ip地址的剩余连接数,确定服务端是否可以与目标客户端建立连接,进而实现对目标客户端是否能够与服务端建立连接进行针对性判断的目的,从而避免服务端超负载运行的情况发生。
11.结合第一方面,在第一方面的第一实施例中,所述根据所述剩余连接数,确定是否与所述目标客户端建立连接,包括:
12.若所述剩余连接数大于第二连接数阈值,则允许所述目标客户端与所述服务端建立连接;
13.若所述剩余连接数小于或者等于所述第二连接数阈值,则拒绝所述目标客户端与所述服务端建立连接。
14.结合第一方面的第一实施例,在第一方面的第二实施例中,所述第二连接数阈值
为0;所述若所述剩余连接数大于第二连接数阈值,则允许所述目标客户端与所述服务端的建立连接,包括:
15.若所述剩余连接数大于0,则允许所述目标客户端与所述服务端的建立连接。
16.结合第一方面的第一实施例,在第一方面的第三实施例中,所述连接请求包括请求与所述服务端建立连接的本次连接数;所述根据所述剩余连接数,确定是否与所述目标客户端建立连接,包括:
17.判断所述本次连接数是否小于或者等于所述剩余连接数;
18.若所述本次连接数小于或者等于所述剩余连接数,则允许所述目标客户端与所述服务端建立连接。
19.结合第一方面的第三实施例,在第一方面的第四实施例中,所述当前连接数记录包括已连接数,所述方法还包括:
20.记录所述本次连接数;
21.将所述本次连接数与所述已连接数之间的和作为更新后的已连接数;
22.将所述剩余连接数与所述本次连接数之间的差值作为更新后的剩余连接数。
23.结合第一方面,在第一方面的第五实施例中,所述接收目标客户端用于与所述服务端建立连接的连接请求,包括:
24.接收未知客户端发送的用于与服务端建立连接的连接请求,获取所述未知客户端的ip地址;
25.将所述未知客户端的ip地址与预置的连接数配置文件进行对比,若所述连接数配置文件中包括所述未知客户端的ip地址,则确定所述连接请求为目标客户端用于与所述服务端建立连接的请求;
26.所述连接数配置文件中包括多个客户端的ip地址与连接数阈值之间的对应关系信息,所述对应关系信息包括所述目标ip地址与所述第一连接数阈值之间的子对应关系信息。
27.结合第一方面,在第一方面的第六实施例中,所述服务端所在的文件系统中包括多个节点,所述多个节点包括目标节点,所述方法还包括:
28.接收并存储目标节点发送的连接数配置文件;
29.将所述连接数配置文件同步至所述多个节点中的其他节点。
30.根据第二方面,本发明还提供一种服务端的访问控制装置,所述装置包括:
31.第一接收单元,用于接收目标客户端用于与所述服务端建立连接的连接请求,所述目标客户端的目标ip地址预先配置有第一连接数阈值,所述第一连接数阈值为所述目标ip地址对应的多个客户端与所述服务端建立连接的最大连接数;
32.第一确定单元,用于获取所述目标ip地址的当前连接数记录,确定所述目标ip地址的剩余连接数;
33.控制单元,用于根据所述剩余连接数,确定是否与所述目标客户端建立连接。
34.结合第二方面,在第二方面的第一实施例中,所述控制单元包括:
35.第一控制单元,用于若所述剩余连接数大于第二连接数阈值,则允许所述目标客户端与所述服务端建立连接;
36.第二控制单元,用于若所述剩余连接数小于或者等于所述第二连接数阈值,则拒
绝所述目标客户端与所述服务端建立连接。
37.结合第二方面的第一实施例,在第二方面的第二实施例中,所述第一控制单元包括:
38.第一控制子单元,用于若所述剩余连接数大于0,则允许所述目标客户端与所述服务端的建立连接。
39.结合第二方面的第一实施例,在第二方面的第三实施例中,所述连接请求包括请求与所述服务端建立连接的本次连接数;所述控制单元包括:
40.判断单元,用于判断所述本次连接数是否小于或者等于所述剩余连接数;
41.第三控制单元,用于若所述本次连接数小于或者等于所述剩余连接数,则允许所述目标客户端与所述服务端建立连接。
42.结合第二方面的第三实施例,在第二方面的第四实施例中,所述装置还包括;
43.存储单元,用于记录所述本次连接数;
44.第一更新单元,用于将所述本次连接数与所述已连接数之间的和作为更新后的已连接数;
45.第二更新单元,用于将所述剩余连接数与所述本次连接数之间的差值作为更新后的剩余连接数。
46.结合第二方面,在第二方面的第五实施例中,所述第一接收单元包括:
47.获取单元,用于接收未知客户端发送的用于与服务端建立连接的连接请求,获取所述未知客户端的ip地址;
48.第二确定单元,用于将所述未知客户端的ip地址与预置的连接数配置文件进行对比,若所述连接数配置文件中包括所述未知客户端的ip地址,则确定所述连接请求为目标客户端用于与所述服务端建立连接的请求;
49.所述连接数配置文件中包括多个客户端的ip地址与连接数阈值之间的对应关系信息,所述对应关系信息包括所述目标ip地址与所述第一连接数阈值之间的子对应关系信息。
50.结合第二方面,在第二方面的第六实施例中,所述服务端所在的文件系统中包括多个节点,所述多个节点包括目标节点,所述装置还包括:
51.第二接收单元,用于接收并存储目标节点发送的连接数配置文件;
52.同步单元,用于将所述连接数配置文件同步至所述多个节点中的其他节点。
53.根据第三方面,本发明实施方式还提供一种计算机设备,包括存储器和处理器,所述存储器和所述处理器之间互相通信连接,所述存储器中存储有计算机指令,所述处理器通过执行所述计算机指令,从而执行第一方面及其可选实施方式中任一项的服务端的访问控制方法。
54.根据第四方面,本发明实施方式还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使所述计算机执行第一方面及其可选实施方式中任一项的服务端的访问控制方法。
附图说明
55.为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体
实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
56.图1是根据一示例性实施例提出的一种服务端的访问控制方法的流程图。
57.图2是根据一示例性实施例提出的另一种服务端的访问控制方法的流程图。
58.图3是根据一示例性实施例提出的一种连接数配置文件的结构示意图。
59.图4是根据一示例性实施例提出的一种服务端的缓存结构示意图。
60.图5是根据一示例性实施例提出的又一种服务端的访问控制方法的流程图。
61.图6是根据一示例性实施例提出的一种服务端的访问控制装置的结构框图。
62.图7是根据一示例性实施例提出的一种计算机设备的硬件结构示意图。
具体实施方式
63.下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
64.相关技术中,为防止客户端连接服务端的次数过多,导致服务端超负载运行,则预先限制服务端的总连接数,进而实现对客户端与服务端的之间建立连接的限制。但采用该种方法进行限制,只能确定与文件系统建立连接的连接数,无法确定每一个客户端与文件系统之间的连接情况。
65.为解决上述问题,本发明实施例中提供一种服务端的访问控制方法,用于计算机设备中,需要说明的是,其执行主体可以是服务端的访问控制装置,该装置可以通过软件、硬件或者软硬件结合的方式实现成为计算机设备的部分或者全部,其中,该计算机设备可以是终端或客户端或服务器,服务器可以是一台服务器,也可以为由多台服务器组成的服务器集群,本技术实施例中的终端可以是智能手机、个人电脑、平板电脑、可穿戴设备以及智能机器人等其他智能硬件设备。下述方法实施例中,均以执行主体是计算机设备为例来进行说明。
66.本实施例中的计算机设备是一种文件系统的服务端,能够为访问文件系统的客户端提供文件系统的相关服务。本发明提供的服务端的访问控制方法,在接收到目标客户端的请求后,能够根据目标客户端的目标ip地址的当前连接数记录,确定目标ip地址的剩余连接数,进而明确目标ip地址对应的多个客户端与服务端之间的连接情况,从而通过目标ip地址的剩余连接数,对目标客户端是否能够与服务端建立连接进行针对性判断,从而避免服务端超负载运行的情况发生。
67.图1是根据一示例性实施例提出的一种服务端的访问控制方法的流程图。如图1所示,服务端的访问控制方法包括如下步骤s101至步骤s103。
68.在步骤s101中,接收目标客户端用于与服务端建立连接的连接请求。
69.在本发明实施例中,目标客户端的目标ip地址预先配置有第一连接数阈值,其中,第一连接数阈值为目标ip地址对应的多个客户端与服务端建立连接的最大连接数。可以理解为,为限制服务端被访问的连接数量,预先为多个ip地址配置能够与服务端建立连接的最大连接数,进而避免与服务端建立的连接过多,导致服务端超负载运行的情况发生。
70.当目标客户端需要访问分布式文件系统时,则向分布式文件系统发送用于与服务端建立连接的连接请求,以请求与该分布式文件系统的服务端建立连接,以便能够对分布式文件系统中的物理存储资源执行相关操作。当服务端接收到用于与服务端建立连接的连接请求时,则表征目标客户端需要访问文件系统。
71.在步骤s102中,获取目标ip地址的当前连接数记录,确定目标ip地址的剩余连接数。
72.在本发明实施例中,当前连接数记录是用于记录目标ip地址与服务端之间的连接情况的记录,以便后续服务端发生故障时,服务端能够根据当前连接数记录将发生故障前,目标ip地址与服务端之间已连接的连接数进行恢复。
73.当前连接数记录中,包括目标ip地址对应的多个客户端与服务端之间已经建立连接的已连接数。通过获取目标ip地址的当前连接数记录,能够确定目标ip地址对应的多个客户端中是否存在与服务端建立连接的客户端。若已连接数大于0,则表征在接收到连接请求之前,目标ip地址对应的多个客户端与服务端之间存在至少1个连接。若已连接数等于0,则表征在接收到连接请求之前,目标ip地址对应的多个客户端与服务端之间未建立过连接。
74.由于在服务端中存储有目标ip地址对应的第一连接数阈值,因此,通过第一连接数阈值和当前连接数记录之间的差值,便可以确定目标ip地址的剩余连接数。
75.在步骤s103中,根据剩余连接数,确定是否与目标客户端建立连接。
76.在本发明实施例中,由于第一连接数阈值是目标ip地址对应的多个客户端共享的连接数阈值,因此,通过确定剩余连接数,可以确定该目标客户端是否可以被允许与服务端建立连接,进而实现对目标客户端与服务端之间的连接进行针对性控制的目的。
77.在一实施例中,预先设定允许目标客户端与服务端建立连接的最小连接数阈值,即,预先设定第二连接数阈值。若剩余连接数大于第二连接数阈值,则表征目标ip地址当前存在能够与服务端建立连接的连接数,进而可以允许目标客户端与服务端建立连接。若剩余连接数小于或者等于第二连接数阈值,则表征目标ip地址当前不存在能够与服务端建立连接的连接数,进而拒绝目标客户端与服务端建立连接。通过将剩余连接数与第二连接数阈值进行对比,能够确定目标ip地址的剩余连接数是否满足与服务端建立连接的最小连接数,进而对目标客户端与服务端之间的连接数进行针对性的管理,以避免目标ip地址与服务端之间的连接数量过多导致服务端超负载运行。
78.在一实施场景中,以第二连接数阈值为0例,若目标客户端的剩余连接数大于0,则表征目标ip地址与服务端建立连接的连接数未耗尽,进而可以允许目标客户端与服务端建立连接。
79.通过上述实施例,能够通过目标ip地址的剩余连接数,确定服务端是否可以与目标客户端建立连接,进而实现对目标客户端是否能够与服务端建立连接进行针对性判断的目的,从而避免服务端超负载运行的情况发生。
80.在一实施例中,采用下述方式确定接收的连接请求为目标客户端用于与服务端建立连接的请求。响应于接收到未知客户端发送的用于与服务端建立连接的连接请求时,为确定该未知客户端是否具有与服务端建立连接的权限,则获取该未知客户端的ip地址,以便确定该未知客户端的ip地址是否预先设置有与服务端建立连接的连接数阈值。
81.将未知客户端的ip地址与预置的连接数配置文件进行对比。其中,连接数配置文件中包括多个客户端的ip地址与连接数阈值之间的对应关系信息,对应关系信息包括目标ip地址与第一连接数阈值之间的子对应关系信息。若连接数配置文件中包括未知客户端的ip地址,则表征该未知客户端的ip地址预置有对应的连接数阈值,进而可以确定该未知客户端的ip地址为目标ip地址,确定未知客户端为目标客户端。
82.在一示例中,若连接数配置文件中不包括未知客户端的ip地址,则表征该未知客户端的ip地址未预置对应的连接数阈值,进而确定该未知客户端为非目标客户端。在一例中,为保护文件系统中的物理存储资源的数据安全,则拒绝非目标客户端与服务端建立连接的请求。在另一例中,连接数配置文件中各ip地址对应的连接数阈值之和等于服务端的总连接数。因此,为避免服务端连接客户端的连接数过多,导致服务端超负载运行,影响其他目标客户端与服务端之间的连接,则拒绝非目标客户端与服务端建立连接的请求。
83.图2是根据一示例性实施例提出的另一种服务端的访问控制方法的流程图。如图2所示,服务端的访问控制方法包括如下步骤。
84.在步骤s201中,接收目标客户端用于与服务端建立连接的连接请求。
85.在步骤s202中,获取目标ip地址的当前连接数记录,确定目标ip地址的剩余连接数。
86.在步骤s203中,判断本次连接数是否小于或者等于剩余连接数。
87.在本发明实施例中,目标客户端发送的连接请求中包括请求与服务端建立连接的本次连接数。其中,本次连接数大于或者等于1。本次连接数可以理解为是目标客户端本次需要与服务端建立连接的连接数。
88.剩余连接数是目标客户端能够与服务端建立连接的最小连接数。若本次连接数小于或者等于剩余连接数,则表征服务端能够满足目标客户端的连接请求,进而可以允许目标客户端与服务端建立连接。若本次连接数大于剩余连接数,则表征服务端不能满足目标客户端的连接请求,进而拒绝目标客户端与服务端建立连接。
89.因此,为确定服务端是否能够满足目标客户端的连接请求,则将本次连接数与剩余连接数进行对比,判断本次连接数是否小于或者等于剩余连接数,以便确定是否允许目标客户端与服务端建立连接。
90.在步骤s204中,若本次连接数小于或者等于剩余连接数,则允许目标客户端与服务端建立连接。
91.在本发明实施例中,若本次连接数小于或者等于剩余连接数,则表征服务端能够满足连接请求,能够根据本次连接数与目标客户端建立连接,进而允许目标客户端与服务端建立连接。
92.在一实施例中,若本次连接数大于剩余连接数,则表征服务端不能满足目标客户端的连接请求,进而拒绝目标客户端与服务端建立连接。
93.通过上述实施例,服务端能够通过目标ip地址的剩余连接数和连接请求中的本次连接数,确定服务端是否可以与目标客户端建立连接,进而实现对目标客户端与服务端之间的合理控制。
94.在一实施例中,为避免影响服务端对下一次连接请求的响应,则将本次连接数进行记录,以便及时更新目标ip地址与服务端之间的连接情况,进而有助于保障服务端后续
对目标ip地址对应的多个客户端发送的连接请求进行合理控制,从而避免服务端超负载运行的情况发生。
95.具体的,更新目标ip地址与服务端之间的连接情况包括,将本次连接数与已连接数之间的和作为更新后的已连接数,将剩余连接数与本次连接数之间的差值作为更新后的剩余连接数。
96.在一实施场景中,以本次连接数为1为例。在目标客户端与服务端完成连接的建立后,将已连接数加1,得到新的已连接数。将剩余连接数减1,得到新的剩余连接数。
97.在另一实施例中,由于当前连接数记录是用于记录目标ip地址与服务端之间连接情况的记录,因此,当目标ip地址与服务端之间的连接数发生改变时,目标ip地址的已连接数和剩余连接数也相应发生改变。若目标ip地址与服务端之间的连接数增加,则将已连接数与新增的连接数相加,得到新的已连接数;将剩余连接数与新增的连接数相减,得到新的剩余连接数。若目标ip地址与服务端之间的连接数减少,则将减少的连接数进行回收,将已连接数与减少的连接数相减,得到新的已连接数;将剩余连接数与减少的连接数相加,得到新的剩余连接数。
98.在一实施场景中,若与目标ip地址与服务端之间断开的连接数为n,则目标ip地址与服务端之间的连接数减少n,进而已连接数与减少的连接数相减n相减,得到新的已连接数;将剩余连接数与减少的连接数n相加,得到新的剩余连接数。
99.在又一实施例中,为避免在更新当前连接数记录的过程中出现故障,则预先设置剩余连接数的最大值以及已连接数的最小值,进而在更新的过程中,当剩余连接数大于剩余连接数的最大值或者已连接数小于已连接数的最小值时,则可以确定服务端在更新当前连接数记录的过程中出现故障。其中,剩余连接数的最大值不大于第一数量阈值,已连接数的最小值不小于0。
100.在一实施例中,由于分布式文件系统是指将文件系统管理的物理存储资源存放在节点集群中,因此,分布式文件系统的服务端可以对节点集群中的多个节点进行管理,为各个节点提供服务。其中,多个节点包括目标节点。针对分布式文件系统中的节点,可以理解为是文件系统对外与目标客户端建立通信交互的文件系统客户端,目标客户端可以通过该文件系统客户端与服务端建立连接,进而实现对文件系统的访问。
101.连接数配置文件可以在目标节点中配置完成的,进而由目标节点发送至服务端,服务端将该连接数配置文件进行接收并存储至本地缓存,以便通过该连接数配置文件确定是否与发起连接请求的客户端建立连接。由于目标客户端可以通过节点集群中的任意一个节点向服务端发送连接请求,且为提高检测发送连接请求的未知客户端是否为目标客户端的检测效率,因此,将连接数配置文件同步至节点集群中每一个节点内,以便当有未知客户端通过当前节点向服务端发送连接请求时,当前节点根据预存储的连接数配置文件检测该未知客户端的ip地址是否为目标ip地址,从而有助于降低服务端的控制成本。
102.在一实施场景中,可以通过目标节点的前端页面或者通过对目标节点下发命令,向文件系统发送设置请求,以请求为目标ip地址配置第一连接数阈值。服务端接收到设置请求后,将目标ip地址和第一连接数阈值之间的子对应关系信息存储至本地缓存,并落盘,将该子对应关系信息与连接数配置文件中的其他子对应关系信息一并进行存储。存储完成后,服务端将本次存储的子对应关系信息广播至节点集群中的其他节点,其他节点根据接
收到的广播,将子对应关系信息进行存储,以实现目标ip地址与第一连接数阈值之间的子对应关系在节点集群中的同步共享。设置请求处理完成后,节点集群中的每一个节点均将本次设置的子对应关系存储至本地的连接数配置文件中,完成本地连接数配置文件的更新。在一例中,若删除子对应关系,服务端处理删除请求的原理与处理设置请求的原理相同,再次不再进行赘述。
103.在另一实施场景中,由于每一个节点中存储的连接数配置文件均为相同,因此,以当前节点中的连接数配置文件为例进行说明,连接数配置文件的存储结构可以如图3所示。图3是根据一示例性实施例提出的一种连接数配置文件的结构示意图。在当前节点本地存储的连接数配置文件中,包括每一个目标ip地址对应的第一连接数阈值。其中,ip1:conn info.1表示第一子对应关系,ip2:conn info.2表示第二子对应关系,ipn:conn info.n表示第n子对应关系,ip1、ip2
…
ipn分别代表不同的目标ip地址。conn info.1、conn info.2
…
conn info.n分别代表不同的第一数量阈值。
104.如图4所示,在服务端中,包括每一个节点本地存储的连接数配置文件,以及每一个目标客户端与服务端之间的连接数缓存。其中,连接数缓存包括当前连接记录。图4是根据一示例性实施例提出的一种服务端的缓存结构示意图。
105.在一实施例中,为避免目标客户端通过当前节点与服务端建立连接的过程中,由于当前节点与服务端之间存在故障而导致连接失败的情况发生,则当前节点基于心跳机制,根据预设时间周期,向服务端发送心跳,以便监测当前节点与服务端之间的连接状态。若服务端超过一定时间内未接收到客户端心跳,则认为当前节点与服务端之间的连接断开,服务端将通过当前节点与该服务端建立连接的已连接数量全部进行回收。在一例中,服务端可以将目标客户端的当前连接数记录同步存储至节点集群中每一个节点中,进而当服务端发生故障后,可以根据节点中的当前连接记录恢复目标客户端与服务端之间的连接。
106.在另一实施例中,为监测目标客户端与服务端之间的连接状态,则服务端根据指定时间周期,自动向目标客户端发送心跳,以便当服务端与至少一个目标客户端之间的连接断开时,能够及时发现,及时将断开连接的连接数回收,进而避免影响服务端响应下一次目标客户端的连接请求,从而提高服务端对连接数控制的准确性。其中,指定时间周期可以根据用户需求进行设定。例如:以50秒为一周期,每隔50秒,自动向目标客户端发送一次心跳,以便及时确定服务端与目标客户端之间的连接状态。
107.若与服务端连接的所有目标客户端均未接收到心跳,则表征服务端存在故障,进而清除所有目标ip地址的当前连接数记录。在一例中,若目标客户端重新发送用于与服务端建立连接的连接请求,且目标客户端与服务端之间的连接建立成功,则根据建立的连接数量更新当前连接数记录。
108.在又一实施场景中,目标客户端访问服务端,与服务端建立连接的过程可以如图5所示。图5是根据一示例性实施例提出的又一种服务端的访问控制方法的流程图。
109.在步骤s501中,当前节点接收未知客户端连接请求。
110.在本发明实施例中,连接请求是未知客户端用于与服务端建立连接的请求。
111.在步骤s502中,当前节点根据本地存储的连接数配置文件,判断未知客户端的ip地址是否为目标ip地址。
112.在步骤s503中,若未知客户端的ip地址为目标ip地址,则确定未知客户端为目标
客户端,并将连接请求转发至服务端。
113.在步骤s504中,服务端根据目标ip地址的当前连接数记录,判断目标ip地址的剩余连接数是否大于0。
114.在步骤s505中,若剩余连接数等于0,则拒绝目标客户端与服务端建立连接。
115.在步骤s506中,若剩余连接数大于0,则允许目标客户端与服务端建立连接。
116.在步骤s507中,根据目标客户端请求与服务端建立连接的本次连接数,更新目标ip地址的已连接数和剩余连接数。
117.通过上述实施例,预先针对每一个目标ip地址单独配置对应的第一连接数阈值,进而当接收到目标ip地址所包括的多个客户端发送的连接请求时,能够对与服务端连接的客户端的连接数进行更精细的针对性控制。并且,在控制与目标客户端之间的连接时,是由服务端统一进行管理,进而有助于保证多节点访问的连接数校验一致性。
118.基于相同发明构思,本发明还提供一种服务端的访问控制装置。
119.图6是根据一示例性实施例提出的一种服务端的访问控制装置的结构框图。如图6所示,服务端的访问控制装置包括第一接收单元601、第一确定单元602和控制单元603。
120.第一接收单元601,用于接收目标客户端用于与服务端建立连接的连接请求,目标客户端的目标ip地址预先配置有第一连接数阈值,第一连接数阈值为目标ip地址对应的多个客户端与服务端建立连接的最大连接数;
121.第一确定单元602,用于获取目标ip地址的当前连接数记录,确定目标ip地址的剩余连接数;
122.控制单元603,用于根据剩余连接数,确定是否与目标客户端建立连接。
123.在一实施例中,控制单元603包括:第一控制单元,用于若剩余连接数大于第二连接数阈值,则允许目标客户端与服务端建立连接。第二控制单元,用于若剩余连接数小于或者等于第二连接数阈值,则拒绝目标客户端与服务端建立连接。
124.在另一实施例中,第一控制单元包括:第一控制子单元,用于若剩余连接数大于0,则允许目标客户端与服务端的建立连接。
125.在又一实施例中,连接请求包括请求与服务端建立连接的本次连接数。控制单元603包括:判断单元,用于判断本次连接数是否小于或者等于剩余连接数。第三控制单元,用于若本次连接数小于或者等于剩余连接数,则允许目标客户端与服务端建立连接。
126.在又一实施例中,装置还包括;存储单元,用于记录本次连接数。第一更新单元,用于将本次连接数与已连接数之间的和作为更新后的已连接数。第二更新单元,用于将剩余连接数与本次连接数之间的差值作为更新后的剩余连接数。
127.在又一实施例中,第一接收单元601包括:获取单元,用于接收未知客户端发送的用于与服务端建立连接的连接请求,获取未知客户端的ip地址。第二确定单元,用于将未知客户端的ip地址与预置的连接数配置文件进行对比,若连接数配置文件中包括未知客户端的ip地址,则确定连接请求为目标客户端用于与服务端建立连接的请求。连接数配置文件中包括多个客户端的ip地址与连接数阈值之间的对应关系信息,对应关系信息包括目标ip地址与第一连接数阈值之间的子对应关系信息。
128.在又一实施例中,服务端所在的文件系统中包括多个节点,多个节点包括目标节点,装置还包括:第二接收单元,用于接收并存储目标节点发送的连接数配置文件。同步单
元,用于将连接数配置文件同步至多个节点中的其他节点。
129.上述服务端的访问控制装置的具体限定以及有益效果可以参见上文中对于服务端的访问控制方法的限定,在此不再赘述。上述各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
130.图7是根据一示例性实施例提出的一种计算机设备的硬件结构示意图。如图7所示,该设备包括一个或多个处理器710以及存储器720,存储器720包括持久内存、易失内存和硬盘,图7中以一个处理器710为例。该设备还可以包括:输入装置730和输出装置740。
131.处理器710、存储器720、输入装置730和输出装置740可以通过总线或者其他方式连接,图7中以通过总线连接为例。
132.处理器710可以为中央处理器(central processing unit,cpu)。处理器710还可以为其他通用处理器、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现场可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等芯片,或者上述各类芯片的组合。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
133.存储器720作为一种非暂态计算机可读存储介质,包括持久内存、易失内存和硬盘,可用于存储非暂态软件程序、非暂态计算机可执行程序以及模块,如本技术实施例中的业务管理方法对应的程序指令/模块。处理器710通过运行存储在存储器720中的非暂态软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述任意一种服务端的访问控制方法。
134.存储器720可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据、需要使用的数据等。此外,存储器720可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施例中,存储器720可选包括相对于处理器710远程设置的存储器,这些远程存储器可以通过网络连接至数据处理装置。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
135.输入装置730可接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键信号输入。输出装置740可包括显示屏等显示设备。
136.一个或者多个模块存储在存储器720中,当被一个或者多个处理器710执行时,执行如图1-图5所示的方法。
137.上述产品可执行本发明实施例所提供的方法,具备执行方法相应的功能模块和有益效果。未在本实施例中详尽描述的技术细节,具体可参见如图1-图5所示的实施例中的相关描述。
138.本发明实施例还提供了一种非暂态计算机存储介质,计算机存储介质存储有计算机可执行指令,该计算机可执行指令可执行上述任意方法实施例中的认证方法。其中,存储介质可为磁碟、光盘、只读存储记忆体(read-only memory,rom)、随机存储记忆体(random access memory,ram)、快闪存储器(flash memory)、硬盘(hard disk drive,缩写:hdd)或
固态硬盘(solid-state drive,ssd)等;存储介质还可以包括上述种类的存储器的组合。
139.显然,上述实施例仅仅是为清楚地说明所作的举例,而并非对实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。而由此所引伸出的显而易见的变化或变动仍处于本发明创造的保护范围之中。