CN112559467B - 分布式系统多服务器的请求处理方法及电子设备 - Google Patents
分布式系统多服务器的请求处理方法及电子设备 Download PDFInfo
- Publication number
- CN112559467B CN112559467B CN202011418651.4A CN202011418651A CN112559467B CN 112559467 B CN112559467 B CN 112559467B CN 202011418651 A CN202011418651 A CN 202011418651A CN 112559467 B CN112559467 B CN 112559467B
- Authority
- CN
- China
- Prior art keywords
- activity
- time
- distributed system
- user
- request sent
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/17—Details of further file system functions
- G06F16/176—Support for shared access to files; File sharing support
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/182—Distributed file systems
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明公开了一种分布式系统多服务器的请求处理方法及电子设备,针对分布式系统中的任一服务器,方法包括:接收用户向当前服务器发送的活动参与请求;获取当前服务器的系统时间,将系统时间与预先配置的活动开始时间和活动结束时间进行比较;若比较结果为系统时间在活动开始时间和活动结束时间之间,从分布式系统的共享数据库中查找指定标识,得到指定标识的查找结果;根据查找结果对用户发送的活动参与请求进行响应。利用分布式系统的共享数据库,存储指定标识,通过对指定标识的查找结果来确定对用户发送的活动参与请求的响应,从而统一了活动结束的判断标准,将各服务器的系统时间与活动结束时间的比较转换为统一的指定标识的查找结果判断。
Description
技术领域
本发明涉及软件领域,具体涉及一种分布式系统多服务器的请求处理方法、电子设备及存储介质。
背景技术
对于分布式系统中的多台服务器,各台服务器的系统时间可能存在不一致的情况。如X服务器的系统时间为X服务器本地的系统时间,Y服务器的系统时间为Y服务器本地的系统时间,两者的系统时间可能不一致。现有技术在解决多服务器的系统时间不一致问题时,一般采用同步机制,但同步机制也会因非实时同步(一段时间内不同步)、同步存在误差等问题,导致不同服务器之间的系统时间不能实时一致。
具体到服务器的系统时间使用,当多服务器的系统时间不一致时,会导致不同用户使用不同服务器时,因各服务器的系统时间不一致,用户向服务器发送的请求会因系统时间导致不同处理结果,影响用户的使用体验。如利用分布式系统创建某活动,其中A、B两位用户同时发起请求,A用户请求指向X服务器,B用户请求指向Y服务器,X服务器的系统时间比Y服务器的系统时间快若干秒,会导致以下情况出现:A用户请求了X服务器,判断X服务器的系统时间已经大于活动的截止时间,活动已截止,不再对当前请求进行处理,直接结算A用户排名为第五名,并将排名为第五名的信息展示给A用户;B用户请求了Y服务器,判断Y服务器的系统时间仍小于活动的截止时间,根据请求B用户继续参与活动,B用户的排名从第六名升至第五名,将A用户挤到了第六名。A用户会先看到自己的排名为第五名的信息,之后A用户再查看时发现自己的排名为第六名,导致A用户的体验不佳。虽然这种情况可以通过延迟公布排名结果的方式解决,但是这种延迟公布的解决方式适用于非实时的活动,其具有局限性,无法通用。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的分布式系统多服务器的请求处理方法、电子设备及存储介质。
根据本发明的一个方面,提供了一种分布式系统多服务器的请求处理方法,其中,针对分布式系统中的任一服务器,方法包括:
接收用户向当前服务器发送的活动参与请求;
获取当前服务器的系统时间,将系统时间与预先配置的活动开始时间和活动结束时间进行比较;
若比较结果为系统时间在活动开始时间和活动结束时间之间,从分布式系统的共享数据库中查找指定标识,得到指定标识的查找结果;
根据查找结果对用户发送的活动参与请求进行响应。
根据本发明的另一方面,提供了一种电子设备,包括:处理器、存储器、通信接口和通信总线,处理器、存储器和通信接口通过通信总线完成相互间的通信;
存储器用于存放至少一可执行指令,可执行指令使处理器执行以下操作:
针对分布式系统中的任一服务器,接收用户向当前服务器发送的活动参与请求;
获取当前服务器的系统时间,将系统时间与预先配置的活动开始时间和活动结束时间进行比较;
若比较结果为系统时间在活动开始时间和活动结束时间之间,从分布式系统的共享数据库中查找指定标识,得到指定标识的查找结果;
根据查找结果对用户发送的活动参与请求进行响应。
根据本发明的又一方面,提供了一种计算机存储介质,存储介质中存储有至少一可执行指令,可执行指令使处理器执行上述任一项的分布式系统多服务器的请求处理方法对应的操作。
根据本发明提供的分布式系统多服务器的请求处理方法、电子设备及存储介质,利用分布式系统中各服务器均可访问的分布式系统的共享数据库,存储指定标识,通过对指定标识的查找结果来确定对用户发送的活动参与请求的响应,从而统一了活动结束的判断标准,将现有通过各服务器的系统时间与活动结束时间的比较转换为统一的指定标识的查找结果判断,解决了因各服务器的系统时间不一致导致不同用户活动结束时间不一致等问题。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了根据本发明一个实施例的分布式系统多服务器的请求处理方法的流程示意图;
图2示出了根据本发明另一个实施例的分布式系统多服务器的请求处理方法的流程示意图;
图3示出了根据本发明一个实施例的一种电子设备的结构示意图。
具体实施方式
实施例一
图1示出了根据本发明一个实施例的分布式系统多服务器的请求处理方法的流程示意图,如图1所示,该方法包括如下步骤:
步骤S101,接收用户向当前服务器发送的活动参与请求。
本实施例中分布式系统中包含多个服务器,其中每个服务器均可以接收用户发送的活动参与请求。活动具有活动开始时间和活动结束时间,用户可以在活动开始时间和活动结束时间之间,通过向服务器发送活动参与请求来参与活动。活动开始时间和活动结束时间可以通过配置文件方式记录,也可以直接与活动绑定,方便根据活动参与请求确定活动,直接获取到活动开始时间和活动结束时间。
针对分布式系统中的任一服务器,均可以接收用户向当前服务器发送的活动参与请求,当接收到用户发送的活动参与请求时,确定当前服务器的系统时间作为用户参与活动的参与时间。当前服务器接收到的用户发送的活动参与请求可以由分布式系统利用如负载均衡策略分配,此处不做展开说明。
步骤S102,获取当前服务器的系统时间,将系统时间与预先配置的活动开始时间和活动结束时间进行比较,判断比较结果是否为系统时间在活动开始时间和活动结束时间之间。
当前服务器在接收到用户发送的活动参与请求后,获取系统时间作为用户参与活动时间。将系统时间与活动预先配置的活动开始时间和活动结束时间进行比较,得到对应的比较结果。若系统时间在活动开始时间之前,则用户还不能参与活动,可以直接对用户发送的活动参与请求进行响应失败处理;若系统时间在活动结束时间之后,则活动结束,用户不能继续参与活动,可以直接对用户发送的活动参与请求进行响应失败处理;若系统时间在活动开始时间和活动结束时间之间,此时,由于不同服务器的系统时间不一样,可能存在某些服务器的系统时间已经到达活动结束时间的情况,为使各服务器对于用户发送的活动参与请求的响应处理一致,当系统时间在活动开始时间和活动结束时间之间时,先执行步骤S103,获取指定标识来进一步判断是否活动已经结束,统一各服务器按照系统时间对用户发送的活动参与请求的响应处理。
进一步,比较结果为系统时间在活动开始时间和活动结束时间之间时,若系统时间距离活动结束时间较早时,如系统时间距离活动结束时间30分钟,考虑到各服务器的系统时间虽然不一致,但相差不会较大,当系统时间距离活动结束时间30分钟时,其它服务器的系统时间距离活动结束时间也在30分钟左右,可以认为服务器的系统时间均距离活动结束时间较早,可以直接对用户发送的活动参与请求进行响应成功处理,响应成功处理具体包括如根据活动参与请求,允许用户参与活动、返回用户参与成功信息等。若比较结果为系统时间在活动结束时间之前的预设时段内,如系统时间在活动结束时间之前1分钟内,此时,可能存在其它服务器的系统时间已经到达活动结束时间,此时,执行步骤S103。预设时段可以根据实施时各服务器的系统时间差值等设置,如1分钟,此处不做限定。
步骤S103,从分布式系统的共享数据库中查找指定标识,得到指定标识的查找结果。
分布式系统的共享数据库可以采用分布式系统中各服务器均可访问的redis数据库,指定标识可以以键值对方式存储在分布式系统的共享数据库中,方便快速查找。当前服务器可以直接访问共享数据库,从中查找指定标识,得到指定标识的查找结果。
指定标识可以用于标记活动结束,指定标识可以由服务器写入共享数据库中。具体的,当任一服务器接收到用户发送的活动参与请求后,获取该服务器的系统时间,将系统时间与预先配置的活动开始时间和活动结束时间进行比较,若比较结果为系统时间在活动结束时间之后,即分布式系统中存在了服务器的系统时间到达活动结束时间,该服务器可以在共享数据库中写入指定标识,标记活动结束。进一步,若系统时间已经距离活动结束时间较远时,如距离活动结束时间30分钟之后,此时活动已经结束了,无需继续在共享数据库中写入指定标识,因此,比较结果为系统时间在活动结束时间之后的预设时段内,系统时间距离活动结束时间较接近时,该服务器在共享数据库中写入指定标识,此时,指定标记可以有效地标记活动结束,根据查询到的指定标记,各服务器可以对用户发送的活动参与请求进行相同的响应处理,避免服务器的系统时间不一致造成的影响。进一步,比较结果为系统时间在活动结束时间之后的预设时段内,在该服务器向共享数据库中写入指定标识之前,还可以先判断共享数据库中是否存在其它服务器写入的指定标识;若是,即已经存在其它服务器写入的指定标识时,指定标识已经可以用于标记活动结束,该服务器无需在重新写入指定标识(或更新指定标识),对用户发送的活动参与请求进行响应失败处理;若否,即当前还未有其它服务器写入指定标识,该服务器接收到用户发送的活动参与请求时的系统时间已经最先到达活动结束时间,则由该服务器向共享数据库中写入指定标识,标记活动结束,并对用户发送的活动参与请求进行响应失败处理。
步骤S104,根据查找结果对用户发送的活动参与请求进行响应。
根据查找结果,判断共享数据库中是否存在其它服务器写入的指定标识,若是,说明分布式系统中已经存在其它服务器的系统时间到达活动结束时间,其它服务器已经结束活动,此时,当前服务器也按照活动结束,对用户发送的活动参与请求进行响应失败处理(如返回活动结束消息,提醒用户活动已结束等),从而实现分布式系统中各服务器均统一按照其它服务器的系统时间结束活动,处理活动参与请求;若否,说明分布式系统中还未有服务器的系统时间到达活动结束时间,当前服务器的系统时间也还未到达活动结束时间,用户可以继续参与活动,对用户发送的活动参与请求进行响应成功处理。
根据本发明提供的分布式系统多服务器的请求处理方法,当任一服务器接收到用户发送的活动参与请求时的系统时间最先到达活动结束时间时,在分布式系统的共享数据库中写入指定标识,基于指定标识标记活动结束。各服务器通过对指定标识的查找结果来确定对用户发送的活动参与请求的响应,由于所有服务器访问同一个共享数据库,从而统一了活动结束的判断标准,将现有通过各服务器的系统时间与活动结束时间的比较转换为统一的指定标识的查找结果判断,解决了因各服务器的系统时间不一致导致不同用户活动结束时间不一致等问题。
实施例二
图2示出了根据本发明另一个实施例的分布式系统多服务器的请求处理方法的流程示意图,如图2所示,该方法包括如下步骤:
步骤S201,在活动发布时,向分布式系统的共享数据库中写入指定标识。
在活动发布时,预先在分布式系统的共享数据库中写入指定标识,并将指定标识的过期时间设定为活动结束时间。当到达活动结束时间时,指定标识到达过期时间,指定标识为已过期指定标识,从而可以统一各服务器,根据指定标识来确定活动是否结束。
步骤S202,接收用户向当前服务器发送的活动参与请求。
步骤S203,获取当前服务器的系统时间,将系统时间与预先配置的活动开始时间和活动结束时间进行比较,判断比较结果是否为系统时间在活动开始时间和活动结束时间之间。
此处,优选地比较结果为系统时间在活动开始时间和活动结束时间之间,且系统时间在活动结束时间之前的预设时段内,执行步骤S204,以免系统时间距离活动结束时间较早,如系统时间距离活动结束时间30分钟,当服务器每次接收到用户发送的活动参与请求时,都从共享数据库中查找指定标识,增加共享数据库访问压力。此时,系统时间距离活动结束时间较早,大于预设时段,考虑到各服务器的系统时间相差不超过预设时段,各服务器的系统时间在活动开始时间和活动结束时间之间,此时活动未结束,可以对用户发送的活动参与请求进行响应成功处理。当比较结果为系统时间在活动开始时间和活动结束时间之间,且系统时间在活动结束时间之前的预设时段内,此时,可能存在其它服务器的系统时间到达活动结束时间,需进一步执行步骤S204,从共享数据库中查找指定标识。
步骤S204,从分布式系统的共享数据库中查找指定标识,得到指定标识的查找结果。
以上步骤S202-S204参照图1实施例中步骤S101-S103的描述,在此不再赘述。
步骤S205,根据查找结果对用户发送的活动参与请求进行响应。
从共享数据库中查找指定标识时,判断指定标识是否已过期,若是,说明活动已结束,则对用户发送的活动参与请求进行响应失败处理;若否,说明系统时间还未到达活动结束时间,则对用户发送的活动参与请求进行响应成功处理。
根据本发明提供的分布式系统多服务器的请求处理方法,在活动发布时,在分布式系统的共享数据库中写入指定标识,将指定标识的过期时间设置为活动结束时间,根据指定标识统一标记活动结束,服务器根据对指定标识是否已过期的判断,确定活动是否结束,完成对用户发送的活动参与请求的响应处理。进一步,为避免服务器频繁访问共享数据库,造成共享数据库的访问压力,在服务器接收到用户发送的活动参与请求后,将服务器的系统时间与活动开始时间和活动结束时间进行比较,当比较结果为系统时间在活动开始时间和活动结束时间之间,优选系统时间在活动结束时间之前的预设时段内时,从共享数据库中查找指定标识,以减少频繁对共享数据库的访问。
实施例三
本申请实施例三提供了一种非易失性计算机存储介质,计算机存储介质存储有至少一可执行指令,该计算机可执行指令可执行上述任意方法实施例中的分布式系统多服务器的请求处理方法。
可执行指令具体可以用于使得处理器执行以下操作:针对分布式系统中的任一服务器,接收用户向当前服务器发送的活动参与请求;获取当前服务器的系统时间,将系统时间与预先配置的活动开始时间和活动结束时间进行比较;若比较结果为系统时间在活动开始时间和活动结束时间之间,从分布式系统的共享数据库中查找指定标识,得到指定标识的查找结果;根据查找结果对用户发送的活动参与请求进行响应。
在一种可选的实施方式中,可执行指令进一步使处理器执行以下操作:若比较结果为系统时间在活动结束时间之后的预设时段内,判断分布式系统的共享数据库中是否存在其它服务器写入的指定标识;若是,则对用户发送的活动参与请求进行响应失败处理;若否,则向分布式系统的共享数据库中写入指定标识,并对用户发送的活动参与请求进行响应失败处理。
在一种可选的实施方式中,可执行指令进一步使处理器执行以下操作:若比较结果为系统时间在活动开始时间和活动结束时间之间,判断分布式系统的共享数据库中是否存在其它服务器写入的指定标识;若是,则对用户发送的活动参与请求进行响应失败处理;若否,则对用户发送的活动参与请求进行响应成功处理。
在一种可选的实施方式中,可执行指令进一步使处理器执行以下操作:在活动发布时,向分布式系统的共享数据库中写入指定标识,将指定标识的过期时间设定为活动结束时间;若比较结果为系统时间在活动开始时间和活动结束时间之间,从分布式系统的共享数据库中查找指定标识,判断指定标识是否已过期;若是,则对用户发送的活动参与请求进行响应失败处理;若否,则对用户发送的活动参与请求进行响应成功处理。
在一种可选的实施方式中,可执行指令进一步使处理器执行以下操作:若比较结果为系统时间在活动结束时间之前的预设时段内,从分布式系统的共享数据库中查找指定标识,得到指定标识的查找结果。
在一种可选的实施方式中,分布式系统的共享数据库为多服务器访问的redis数据库;指定标识以键值对方式存储。
实施例四
图3示出了根据本发明实施例四的一种电子设备的结构示意图,本发明具体实施例并不对电子设备的具体实现做限定。
如图3所示,该电子设备可以包括:处理器(processor)302、通信接口(Communications Interface)304、存储器(memory)306、以及通信总线308。
其中:
处理器302、通信接口304、以及存储器306通过通信总线308完成相互间的通信。
通信接口304,用于与其它设备比如客户端或其它服务器等的网元通信。
处理器302,用于执行程序310,具体可以执行上述分布式系统多服务器的请求处理方法实施例中的相关步骤。
具体地,程序310可以包括程序代码,该程序代码包括计算机操作指令。
处理器302可能是中央处理器CPU,或者是特定集成电路ASIC(ApplicationSpecific Integrated Circuit),或者是被配置成实施本发明实施例的一个或多个集成电路。服务器包括的一个或多个处理器,可以是同一类型的处理器,如一个或多个CPU;也可以是不同类型的处理器,如一个或多个CPU以及一个或多个ASIC。
存储器306,用于存放程序310。存储器306可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
程序310具体可以用于使得处理器302执行以下操作:针对分布式系统中的任一服务器,接收用户向当前服务器发送的活动参与请求;获取当前服务器的系统时间,将系统时间与预先配置的活动开始时间和活动结束时间进行比较;若比较结果为系统时间在活动开始时间和活动结束时间之间,从分布式系统的共享数据库中查找指定标识,得到指定标识的查找结果;根据查找结果对用户发送的活动参与请求进行响应。
在一种可选的实施方式中,程序310用于使得处理器302若比较结果为系统时间在活动结束时间之后的预设时段内,判断分布式系统的共享数据库中是否存在其它服务器写入的指定标识;若是,则对用户发送的活动参与请求进行响应失败处理;若否,则向分布式系统的共享数据库中写入指定标识,并对用户发送的活动参与请求进行响应失败处理。
在一种可选的实施方式中,程序310用于使得处理器302若比较结果为系统时间在活动开始时间和活动结束时间之间,判断分布式系统的共享数据库中是否存在其它服务器写入的指定标识;若是,则对用户发送的活动参与请求进行响应失败处理;若否,则对用户发送的活动参与请求进行响应成功处理。
在一种可选的实施方式中,程序310用于使得处理器302在活动发布时,向分布式系统的共享数据库中写入指定标识,将指定标识的过期时间设定为活动结束时间;若比较结果为系统时间在活动开始时间和活动结束时间之间,从分布式系统的共享数据库中查找指定标识,判断指定标识是否已过期;若是,则对用户发送的活动参与请求进行响应失败处理;若否,则对用户发送的活动参与请求进行响应成功处理。
在一种可选的实施方式中,程序310用于使得处理器302若比较结果为系统时间在活动结束时间之前的预设时段内,从分布式系统的共享数据库中查找指定标识,得到指定标识的查找结果。
在一种可选的实施方式中,分布式系统的共享数据库为多服务器访问的redis数据库;指定标识以键值对方式存储。
程序310中各步骤的具体实现可以参见上述分布式系统多服务器的请求处理实施例中的相应步骤中对应的描述,在此不赘述。所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的设备和模块的具体工作过程,可以参考前述方法实施例中的对应过程描述,在此不再赘述。
通过本实施例提供的方案,利用分布式系统中各服务器均可访问的数据库,存储指定标识,通过对指定标识的查找结果来确定对用户发送的活动参与请求的响应,从而统一了活动结束的判断标准,将现有通过各服务器的系统时间与活动结束时间的比较转换为统一的指定标识的查找结果判断,解决了因各服务器的系统时间不一致导致不同用户活动结束时间不一致等问题。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
Claims (13)
1.一种分布式系统多服务器的请求处理方法,其中,针对分布式系统中的任一服务器,方法包括:
接收用户向当前服务器发送的活动参与请求;
获取当前服务器的系统时间,将所述系统时间与预先配置的活动开始时间和活动结束时间进行比较;
若比较结果为所述系统时间在所述活动开始时间和活动结束时间之间,从分布式系统的共享数据库中查找指定标识,得到指定标识的查找结果;其中,所述查找结果包括查找是否存在用于标记活动结束的指定标识;所述指定标识为服务器的系统时间到达活动结束时间后由服务器写入;和/或,查找是否存在已过期的指定标识;所述指定标识的过期时间设定为活动结束时间;
根据所述查找结果对用户发送的活动参与请求进行响应。
2.根据权利要求1所述的方法,其中,所述方法还包括:
若比较结果为所述系统时间在所述活动结束时间之后的预设时段内,判断分布式系统的共享数据库中是否存在其它服务器写入的指定标识;
若是,则对用户发送的活动参与请求进行响应失败处理;
若否,则向所述分布式系统的共享数据库中写入指定标识,并对用户发送的活动参与请求进行响应失败处理。
3.根据权利要求2所述的方法,其中,所述若比较结果为所述系统时间在所述活动开始时间和活动结束时间之间,从分布式系统的共享数据库中查找指定标识,得到指定标识的查找结果;根据所述查找结果对用户发送的活动参与请求进行响应进一步包括:
若比较结果为所述系统时间在所述活动开始时间和活动结束时间之间,判断分布式系统的共享数据库中是否存在其它服务器写入的指定标识;
若是,则对用户发送的活动参与请求进行响应失败处理;
若否,则对用户发送的活动参与请求进行响应成功处理。
4.根据权利要求1所述的方法,其中,所述方法还包括:在活动发布时,向分布式系统的共享数据库中写入指定标识,将所述指定标识的过期时间设定为活动结束时间;
所述若比较结果为所述系统时间在所述活动开始时间和活动结束时间之间,从分布式系统的共享数据库中查找指定标识,得到指定标识的查找结果;根据所述查找结果对用户发送的活动参与请求进行响应进一步包括:
若比较结果为所述系统时间在所述活动开始时间和活动结束时间之间,从分布式系统的共享数据库中查找指定标识,判断所述指定标识是否已过期;
若是,则对用户发送的活动参与请求进行响应失败处理;
若否,则对用户发送的活动参与请求进行响应成功处理。
5.根据权利要求1-4中任一项所述的方法,其中,所述若比较结果为所述系统时间在所述活动开始时间和活动结束时间之间,从分布式系统的共享数据库中查找指定标识,得到指定标识的查找结果进一步包括:
若比较结果为所述系统时间在所述活动结束时间之前的预设时段内,从分布式系统的共享数据库中查找指定标识,得到指定标识的查找结果。
6.根据权利要求1-4中任一项所述的方法,其中,所述分布式系统的共享数据库为多服务器访问的redis数据库;所述指定标识以键值对方式存储。
7.一种电子设备,包括:处理器、存储器、通信接口和通信总线,所述处理器、所述存储器和所述通信接口通过所述通信总线完成相互间的通信;
所述存储器用于存放至少一可执行指令,所述可执行指令使所述处理器执行以下操作:
针对分布式系统中的任一服务器,接收用户向当前服务器发送的活动参与请求;
获取当前服务器的系统时间,将所述系统时间与预先配置的活动开始时间和活动结束时间进行比较;
若比较结果为所述系统时间在所述活动开始时间和活动结束时间之间,从分布式系统的共享数据库中查找指定标识,得到指定标识的查找结果;其中,所述查找结果包括查找是否存在用于标记活动结束的指定标识;所述指定标识为服务器的系统时间到达活动结束时间后由服务器写入;和/或,查找是否存在已过期的指定标识;所述指定标识的过期时间设定为活动结束时间;
根据所述查找结果对用户发送的活动参与请求进行响应。
8.根据权利要求7所述的电子设备,所述可执行指令进一步使所述处理器执行以下操作:
若比较结果为所述系统时间在所述活动结束时间之后的预设时段内,判断分布式系统的共享数据库中是否存在其它服务器写入的指定标识;
若是,则对用户发送的活动参与请求进行响应失败处理;
若否,则向所述分布式系统的共享数据库中写入指定标识,并对用户发送的活动参与请求进行响应失败处理。
9.根据权利要求8所述的电子设备,所述可执行指令进一步使所述处理器执行以下操作:
若比较结果为所述系统时间在所述活动开始时间和活动结束时间之间,判断分布式系统的共享数据库中是否存在其它服务器写入的指定标识;
若是,则对用户发送的活动参与请求进行响应失败处理;
若否,则对用户发送的活动参与请求进行响应成功处理。
10.根据权利要求7所述的电子设备,所述可执行指令进一步使所述处理器执行以下操作:
在活动发布时,向分布式系统的共享数据库中写入指定标识,将所述指定标识的过期时间设定为活动结束时间;
若比较结果为所述系统时间在所述活动开始时间和活动结束时间之间,从分布式系统的共享数据库中查找指定标识,判断所述指定标识是否已过期;
若是,则对用户发送的活动参与请求进行响应失败处理;
若否,则对用户发送的活动参与请求进行响应成功处理。
11.根据权利要求7-10中任一项所述的电子设备,所述可执行指令进一步使所述处理器执行以下操作:
若比较结果为所述系统时间在所述活动结束时间之前的预设时段内,从分布式系统的共享数据库中查找指定标识,得到指定标识的查找结果。
12.根据权利要求7-10中任一项所述的电子设备,所述分布式系统的共享数据库为多服务器访问的redis数据库;所述指定标识以键值对方式存储。
13.一种计算机存储介质,所述存储介质中存储有至少一可执行指令,所述可执行指令使处理器执行如权利要求1-6中任一项所述的分布式系统多服务器的请求处理方法对应的操作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011418651.4A CN112559467B (zh) | 2020-12-07 | 2020-12-07 | 分布式系统多服务器的请求处理方法及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011418651.4A CN112559467B (zh) | 2020-12-07 | 2020-12-07 | 分布式系统多服务器的请求处理方法及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112559467A CN112559467A (zh) | 2021-03-26 |
CN112559467B true CN112559467B (zh) | 2021-08-31 |
Family
ID=75059315
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011418651.4A Active CN112559467B (zh) | 2020-12-07 | 2020-12-07 | 分布式系统多服务器的请求处理方法及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112559467B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6981061B1 (en) * | 1997-11-14 | 2005-12-27 | Mitsubishi Denki Kabushiki Kaisha | Method and system for updating a data system in conjunction with synchronized clock modules |
CN103297456A (zh) * | 2012-02-24 | 2013-09-11 | 阿里巴巴集团控股有限公司 | 一种分布式系统下共享资源的访问方法及分布式系统 |
CN107644265A (zh) * | 2017-09-29 | 2018-01-30 | 北京摩拜科技有限公司 | 共享物品的预约方法、装置、系统及服务器 |
CN109144737A (zh) * | 2018-10-09 | 2019-01-04 | 郑州云海信息技术有限公司 | 一种分布式集群系统中控制器管理方法、装置及存储介质 |
CN111400266A (zh) * | 2019-01-02 | 2020-07-10 | 阿里巴巴集团控股有限公司 | 数据处理方法和系统、操作事件的诊断处理方法和装置 |
CN111930765A (zh) * | 2020-07-31 | 2020-11-13 | 银盛支付服务股份有限公司 | 一种分布式系统唯一流水号生成的方法 |
-
2020
- 2020-12-07 CN CN202011418651.4A patent/CN112559467B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6981061B1 (en) * | 1997-11-14 | 2005-12-27 | Mitsubishi Denki Kabushiki Kaisha | Method and system for updating a data system in conjunction with synchronized clock modules |
CN103297456A (zh) * | 2012-02-24 | 2013-09-11 | 阿里巴巴集团控股有限公司 | 一种分布式系统下共享资源的访问方法及分布式系统 |
CN107644265A (zh) * | 2017-09-29 | 2018-01-30 | 北京摩拜科技有限公司 | 共享物品的预约方法、装置、系统及服务器 |
CN109144737A (zh) * | 2018-10-09 | 2019-01-04 | 郑州云海信息技术有限公司 | 一种分布式集群系统中控制器管理方法、装置及存储介质 |
CN111400266A (zh) * | 2019-01-02 | 2020-07-10 | 阿里巴巴集团控股有限公司 | 数据处理方法和系统、操作事件的诊断处理方法和装置 |
CN111930765A (zh) * | 2020-07-31 | 2020-11-13 | 银盛支付服务股份有限公司 | 一种分布式系统唯一流水号生成的方法 |
Non-Patent Citations (1)
Title |
---|
分布式系统的时间同步容错机制研究;董甲东等;《计算机技术与发展》;20080310(第03期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN112559467A (zh) | 2021-03-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106598992B (zh) | 数据库的操作方法及装置 | |
CN110309218B (zh) | 一种数据交换系统和数据写入方法 | |
CN110740184B (zh) | 基于微服务架构的交易策略测试系统 | |
WO2013138770A1 (en) | Systems and methods for supporting inline delegation of middle-tier transaction logs to database | |
CN110532123B (zh) | HBase系统的故障转移方法及装置 | |
CN110795171B (zh) | 业务数据处理方法、装置、计算机设备及存储介质 | |
CN108833584B (zh) | 消息推送方法、终端、服务器及计算机存储介质 | |
CN111784318A (zh) | 数据处理方法、装置、电子设备及存储介质 | |
CN106155925A (zh) | 一种获取数据的方法及装置 | |
CN106874343B (zh) | 一种时序数据库的数据删除方法及系统 | |
KR20140047448A (ko) | 트랜잭션 재시작 가능한 클라이언트 장치와 데이터베이스 서버 및 방법 | |
CN112559467B (zh) | 分布式系统多服务器的请求处理方法及电子设备 | |
CN104639666B (zh) | 域名访问方法及装置 | |
CN113468143A (zh) | 数据迁移方法、系统、计算设备及存储介质 | |
CN111309693A (zh) | 一种数据同步方法、装置、系统、电子设备及存储介质 | |
CN110765125A (zh) | 一种存储数据的方法及装置 | |
CN105630889B (zh) | 通用缓存的方法及装置 | |
CN109447293B (zh) | 一种产品数据的处理方法及装置 | |
CN109145000B (zh) | 一种工业实时数据库opc ua数据接口实现方法 | |
US20200341820A1 (en) | Synchronizing batch job status across nodes on a clustered system | |
CN105511813A (zh) | 访问服务器磁盘的方法、装置及系统 | |
CN111563183A (zh) | 拜访记录的自动生成方法、装置及计算设备、存储介质 | |
CN111966460A (zh) | 一种优化容器内显示进程信息的方法、系统、设备及介质 | |
CN109286672A (zh) | 一种用户请求的处理方法、装置及服务器 | |
CN112905602B (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 | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20220829 Address after: 518054-13098, 13th floor, main tower of marine center, No. 59, Linhai Avenue, Qianhai Shenzhen Hong Kong cooperation zone, Shenzhen, Guangdong Patentee after: Shenzhen ZhangYue Animation Technology Co.,Ltd. Address before: 100124 2029e, Sihui building, Chaoyang District, Beijing Patentee before: ZHANGYUE TECHNOLOGY Co.,Ltd. |