访问处理方法、装置、电子设备以及存储介质制造方法及图纸

技术编号:35057658 阅读:10 留言:0更新日期:2022-09-28 11:07
本公开提供了一种访问处理方法、装置、电子设备以及存储介质,涉及计算机技术领域,尤其涉及软件技术、大数据和云服务技术领域。具体实现方案为:响应于接收到来自对象针对目标服务的访问请求,获取对象的访问权限标识,其中,访问权限标识用于指示对象在预定时段内访问目标服务的访问权限;在根据访问权限标识确定对象具有访问权限的情况下,更新当前被访问线程的次数局部变量的变量值,其中,次数局部变量用于指示对象在预定时段内的累计访问次数。数。数。

【技术实现步骤摘要】
访问处理方法、装置、电子设备以及存储介质


[0001]本公开涉及计算机
,尤其涉及软件技术、大数据和云服务
具体地,涉及一种访问处理方法、装置、电子设备以及存储介质。

技术介绍

[0002]随着业务的不断发展,应用所提供的功能日趋复杂化和多样化。为了保证应用的并发处理能力,可以基于分布式的业务系统来实现。例如,应用所提供的功能可以基于分布式的业务系统中的多个服务实现,服务可以具有与该服务对应的多个实例。实例可以用于处理针对服务的访问请求。

技术实现思路

[0003]本公开提供了一种访问处理方法、装置、电子设备以及存储介质。
[0004]根据本公开的一方面,提供了一种访问处理方法,包括:响应于接收到来自对象针对目标服务的访问请求,获取上述对象的访问权限标识,其中,上述访问权限标识用于指示上述对象在预定时段内访问上述目标服务的访问权限;以及,在根据上述访问权限标识确定上述对象具有上述访问权限的情况下,更新当前被访问线程的次数局部变量的变量值,其中,上述次数局部变量用于指示上述对象在上述预定时段内的累计访问次数。
[0005]根据本公开的另一方面,提供了一种访问处理装置,包括:第一获取模块,用于响应于接收到来自对象针对目标服务的访问请求,获取上述对象的访问权限标识,其中,上述访问权限标识用于指示上述对象在预定时段内访问上述目标服务的访问权限;以及,第一更新模块,用于在根据上述访问权限标识确定上述对象具有上述访问权限的情况下,更新当前被访问线程的次数局部变量的变量值,其中,上述次数局部变量用于指示上述对象在上述预定时段内的累计访问次数。
[0006]根据本公开的另一方面,提供了一种电子设备,包括:至少一个处理器;以及与上述至少一个处理器通信连接的存储器;其中,上述存储器存储有可被上述至少一个处理器执行的指令,上述指令被上述至少一个处理器执行,以使上述至少一个处理器能够执行本公开所述的方法。
[0007]根据本公开的另一方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,其中,上述计算机指令用于使上述计算机执行本公开所述的方法。
[0008]根据本公开的另一方面,提供了一种计算机程序产品,包括计算机程序,上述计算机程序在被处理器执行时实现本公开所述的方法。
[0009]应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
[0010]附图用于更好地理解本方案,不构成对本公开的限定。其中:
[0011]图1示意性示出了根据本公开实施例的可以应用访问处理方法及装置的示例性系统架构;
[0012]图2示意性示出了根据本公开实施例的访问处理方法的流程图;
[0013]图3A示意性示出了根据本公开另一实施例的访问处理方法的流程图;
[0014]图3B示意性示出了根据本公开实施例的更新当前被访问线程的次数局部变量的变量值的示例示意图;
[0015]图3C示意性示出了根据本公开实施例的根据待更新访问权限标识更新存储于第二数据块的访问权限变量的变量值的示意示意图;
[0016]图4示意性示出了根据本公开实施例的访问处理装置的框图;以及
[0017]图5示意性示出了根据本公开实施例的适于实现访问处理方法的电子设备的框图。
具体实施方式
[0018]以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
[0019]服务可以包括在线服务。在线服务可以包括访问次数验证模块。访问次数验证模块可以用于向使用付费服务的对象提供预定时段内的最大访问次数,使得对象在配额内使用服务。此外,访问次数验证模块还可以用于保证服务在合理负载之内运行,避免超过服务的并发量上限。
[0020]可以将基于分布式的业务系统来实现的服务称为分布式服务。针对多实例部署的分布式服务,访问次数验证模块作为基础模块之一,需要保证能够具有较高的处理能力。实例可以包括多个线程。线程可以用于处理针对服务的访问请求
[0021]在利用分布式服务的过程中,将出现高并发情况。为了保证线程安全,可以利用基于线程锁的方式来实现。基于线程锁的方式会有大量时间耗费在线程锁竞争上,因此,将增加访问处理耗时。线程锁可以用于控制多个线程按照预定顺序执行。线程锁是先锁定线程,在线程完成任务之后,再解除对线程的锁定。线程锁的类型可以包括互斥锁和自旋锁等。
[0022]为此,本公开实施例提出了一种接近于无锁化的访问处理方案。根据本公开实施例的技术方案,响应于接收到来自对象针对目标服务的访问请求,获取对象的访问权限标识。访问权限标识用于指示对象在预定时段内访问目标服务的访问权限。在根据访问权限标识确定对象具有访问权限的情况下,更新当前被访问线程的次数局部变量的变量值。次数局部变量用于指示对象在预定时段内的累计访问次数。由此,能够减少锁竞争,并降低访问处理耗时
[0023]根据本公开的实施例,由于是更新当前被访问线程的次数局部变量的变量值,不会影响实例中的其他线程,即,各个线程之间互不影响,因此,针对更新累计次数的操作无需加锁,由此,能够减少锁竞争,降低了访问处理耗时。
[0024]图1示意性示出了根据本公开实施例的可以应用访问处理方法及装置的示例性系统架构。
[0025]需要注意的是,图1所示仅为可以应用本公开实施例的系统架构的示例,以帮助本领域技术人员理解本公开的
技术实现思路
,但并不意味着本公开实施例不可以用于其他设备、系统、环境或场景。
[0026]如图1所示,根据该实施例的系统架构100可以包括业务系统101、网络102和数据库103。网络102用以在业务系统101和数据库103之间提供通信链路的介质。网络102可以包括各种连接类型,例如有线和/或无线通信链路等。
[0027]业务系统101可以是分布式系统。业务系统101可以包括M个服务。即,服务101_1、服务101_2、......、服务101_m、......、服务101_M

1和服务101_M。服务101_m可以具有与该服务101_m对应的P个实例。即,实例101_m_1、实例101_m_2、......、实例101_m_p、......、实例101_m_P

1和实例101_m_P。实例101_m_p可以具有与该实例101_m_p对应的Q个线程,即,线程101_m_p_1、线程101_m_p_2、......、线程101_m_p_q、......、线程101_m_p_Q

1和线程101_m_p_Q。M、P和Q均可以是大于1的整数。实例101_m_p可以运行本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种访问处理方法,包括:响应于接收到来自对象针对目标服务的访问请求,获取所述对象的访问权限标识,其中,所述访问权限标识用于指示所述对象在预定时段内访问所述目标服务的访问权限;以及在根据所述访问权限标识确定所述对象具有所述访问权限的情况下,更新当前被访问线程的次数局部变量的变量值,其中,所述次数局部变量用于指示所述对象在所述预定时段内的累计访问次数。2.根据权利要求1所述的方法,其中,所述获取所述对象的访问权限标识,包括:确定当前用于访问的第一数据块,其中,所述第一数据块存储有用于指示所述访问权限标识的访问权限变量;以及从所述第一数据块的访问权限变量中获取所述对象的访问权限标识。3.根据权利要求2所述的方法,其中,所述确定当前用于访问的第一数据块,包括:确定读指针当前指向的数据块;以及将所述读指针当前指向的数据块确定为所述当前用于访问的第一数据块。4.根据权利要求3所述的方法,还包括:响应于接收到针对所述对象的访问权限标识的更新请求,确定待更新访问权限标识;确定当前用于更新的第二数据块,其中,所述第二数据块存储有用于指示所述访问权限标识的访问权限变量;以及根据所述待更新访问权限标识更新存储于所述第二数据块的访问权限变量的变量值。5.根据权利要求4所述的方法,其中,所述确定当前用于更新的第二数据块,包括:确定读指针当前未指向的数据块;以及将所述读指针当前未指向的数据块确定为所述当前用于更新的第二数据块。6.根据权利要求5所述的方法,还包括:在完成更新存储于所述第二数据块的访问权限变量的变量值之后,响应于未检测到针对所述第一数据块的访问操作,根据所述待更新访问权限标识更新存储于所述第一数据块的访问权限变量的变量值。7.根据权利要求1~6中任一项所述的方法,还包括:响应于接收到针对所述对象的全局总访问次数的次数获取请求,获取所述对象在所述预定时段内的全局总访问次数,其中,所述全局总访问次数是根据所述目标服务包括的至少一个实例的局部总访问次数确定的,所述局部总访问次数是根据所述实例包括的至少一个线程的累计访问次数确定的;以及根据所述全局总访问次数和针对所述对象在所述预定时段内的预定访问次数阈值,确定所述对象的访问权限标识。8.根据权利要求7所述的方法,其中,所述根据所述全局总访问次数和针对所述对象的预定访问次数阈值,确定所述对象的访问权限标识,包括:在确定所述全局总访问次数小于或等于针对所述对象在所述预定时段内的预定访问次数阈值的情况下,确定所述对象的访问权限标识是指示所述对象具有所述访问权限的标识。
9.根据权利要求1~8中任一项所述的方法,其中,所述次数局部变量包括线程局部变量。10.一种访问处理装置,包括:第一获取模块,用于响应于接收到来自对象针对目标服务的访问请求,获取所述对象的访问权限标识,其中,所述访问权限标识用于指示所述对象在预定时段内访问所述目标服务的访问权限;以及第一更新模块,用于在根据所述访问权限标识确定所述对象具有所述访问权限的情况下,更新当前被访问线程的次数局部变量的变量值,其中,所述次数局部变量用于...

【专利技术属性】
技术研发人员:陈坤焦健
申请(专利权)人:北京百度网讯科技有限公司
类型:发明
国别省市:

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

1