发明内容
有鉴于此,本发明提供了一种设备操作方法、集群系统、电子设备及可读取存储介质,能够实现对请求的顺序处理。
本发明提供的技术方案如下:
一种设备操作方法,应用于集群系统,该集群系统包括多个第一节点组成的第一集群和多个第二节点组成的第二集群,所述集群系统与至少一个通信设备通信连接,该设备操作方法包括:
所述第一集群中的至少两个第一节点分别获得针对所述至少一个通信设备其中一个目标通信设备的至少两个数据操作请求;
所述至少两个第一节点对为所述目标通信设备预设的第一分布式锁进行竞争;
竞争得到所述第一分布式锁的第一节点将对应的数据操作请求进行存储;
所述第二集群中的第二节点对为所述目标通信设备预设的第二分布式锁进行竞争;
竞争得到所述第二分布式锁的第二节点根据时间信息从已存储的数据操作请求中获得一条数据操作请求,对所述目标通信设备进行数据操作。
进一步地,所述数据操作请求包括所述目标通信设备的标识信息,所述至少两个第一节点对为所述目标通信设备预设的第一分布式锁进行竞争的步骤包括:
所述至少两个第一节点根据所述目标通信设备的标识信息确定对应的第一分布式锁,并对该第一分布式锁进行竞争。
进一步地,竞争得到所述第一分布式锁的第一节点将对应的数据操作请求进行存储的步骤之后,该方法还包括:
释放所述第一分布式锁,以使其他获得数据操作请求的第一节点开始竞争该第一分布式锁。
进一步地,竞争得到所述第二分布式锁的第二节点根据时间信息从已存储的数据操作请求中获得一条数据操作请求的步骤包括:
从已存储的数据操作请求中获得存储时刻最早的数据操作请求。
进一步地,竞争得到所述第二分布式锁的第二节点对所述目标通信设备进行配置的步骤之后,该方法还包括:
释放所述第二分布式锁,并从已存储的数据操作请求中删除竞争得到所述第二分布式锁的第二节点对应的数据操作请求。
进一步地,竞争得到所述第一分布式锁的第一节点将对应的数据操作请求进行存储的步骤之后,该方法还包括:
竞争得到所述第一分布式锁的第一节点生成通知信息,发送至所述第二集群,以通知所述第二集群中的第二节点对所述目标通信设备进行数据操作。
进一步地,所述通信设备为交换机,所述数据操作请求是对所述交换机进行配置的配置请求。
进一步地,将竞争得到所述第一分布式锁的第一节点将对应的数据操作请求进行存储的步骤包括:
按照ID自增的方式存储所述数据操作请求。
本发明还提供了一种集群系统,包括第一集群和第二集群,第一集群包括多个第一节点,第二集群包括多个第二节点,其中:
所述第一集群中的至少两个第一节点用于分别获得针对所述至少一个通信设备其中一个目标通信设备的至少两个数据操作请求;对为所述目标通信设备预设的第一分布式锁进行竞争;竞争得到所述第一分布式锁的第一节点将对应的数据操作请求进行存储;
所述第二集群中的第二节点用于对为所述目标通信设备预设的第二分布式锁进行竞争;竞争得到所述第二分布式锁的第二节点根据时间信息从已存储的数据操作请求中获得一条数据操作请求,对所述目标通信设备进行数据操作。
进一步地,所述数据操作请求包括所述目标通信设备的标识信息,所述至少两个第一节点对为所述目标通信设备预设的第一分布式锁进行竞争的方法包括:
所述至少两个第一节点根据所述目标通信设备的标识信息确定对应的第一分布式锁,并对该第一分布式锁进行竞争。
进一步地,竞争得到所述第一分布式锁的第一节点将对应的数据操作请求进行存储的方法之后,所述第一节点还用于释放所述第一分布式锁,以使其他获得数据操作请求的第一节点开始竞争该第一分布式锁。
进一步地,竞争得到所述第二分布式锁的第二节点根据时间信息从已存储的数据操作请求中获得一条数据操作请求的方法包括:
从已存储的数据操作请求中获得存储时刻最早的数据操作请求。
进一步地,竞争得到所述第二分布式锁的第二节点对所述目标通信设备进行配置的步骤之后,竞争得到所述第二分布式锁的第二节点还用于释放所述第二分布式锁,并从已存储的数据操作请求中删除竞争得到所述第二分布式锁的第二节点对应的数据操作请求。
进一步地,竞争得到所述第一分布式锁的第一节点将对应的数据操作请求进行存储的步骤之后,竞争得到所述第一分布式锁的第一节点还用于生成通知信息,发送至所述第二集群,以通知所述第二集群中的第二节点对所述目标通信设备进行数据操作。
进一步地,所述通信设备为交换机,所述数据操作请求是对所述交换机进行配置的配置请求。
进一步地,竞争得到所述第一分布式锁的第一节点将对应的数据操作请求进行存储的方法包括:
按照ID自增的方式存储所述数据操作请求。
本发明实施例还提供了一种可读取存储介质,所述可读取存储介质内存储有指令,当所述指令在计算机上运行时,使得计算机作为上述第一节点和\或第二节点执行上述设备操作方法。
本发明实施例还提供了一种电子设备,所述电子设备包括存储器和处理器,所述存储器用于存储有可执行程序代码,所述处理器用于读取所述存储器中存储的可执行程序代码以使得所述电子设备作为上述第一节点和\或第二节点执行上述设备操作方法。
本发明实施例提供了一种设备操作方法、集群系统电子设备及可读取存储介质,通过集群系统中的第一集群和第二集群的配合实现对通信设备的数据操作。第一集群中的第一节点通过对第一分布式锁的竞争,可以实现数据操作请求的顺序存储。第二集群中的第二节点通过对第二分布式锁的竞争,可以实现对已存储的数据操作请求的顺序获得,并完成对目标通信设备的数据操作。通过两个分布式锁的机制,在集群系统出现接收到大量数据操作请求的高并发情况,仍然可以通过第一分布式锁和第二分布式锁的互斥特性,实现大量数据操作请求的顺序处理。既可以保证数据操作请求的顺序处理,同时,可以提高第一集群的吞吐量,并且第一集群和第二集群都可以横向扩展,提高系统的可用性和处理能力。
为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
具体实施方式
下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本发明的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
第一实施例
本发明实施例提供了一种设备操作方法,应用于集群系统10,如图1所示,该集群系统10包括多个第一节点101组成的第一集群100和多个第二节点201组成的第二集群200,该集群系统10与至少一个通信设备300通信连接。如图2所示,该设备操作方法包括以下步骤。
步骤S101,所述第一集群100中的至少两个第一节点101分别获得针对所述至少一个通信设备300其中一个目标通信设备的至少两个数据操作请求。
本发明实施例中的集群系统10可以包括多台服务器,例如可以是应用于软件定义网络SDN中的多台服务器,当然,该集群系统10也可以是应用于其他系统中的多台设备组成的集群。该集群系统10中可以包括第一集群100和第二集群200,每个集群中可以包括多个节点。在一种具体实施方式中,第一集群100可以包括多个Controller节点(控制节点),第二集群200可以包括多个Switch-Service节点(异步处理节点),第一集群100和第二集群200之间可以相互通信。本发明实施例中的通信设备300可以是交换机或其他设备,通信设备300的数量可以因不同系统的不同架构而不同。数据操作请求可以根据通信设备300的不同或实际操作的需要而不同,在一种具体实施方式中,数据操作请求可以是对交换机进行配置的配置请求。数据操作请求可以是集群系统10接收到的由客户端生成的请求,集群系统10对这些数据操作请求进行处理后,对通信设备300进行相应的操作。
在对通信设备300进行操作的过程中,在同时出现大量的数据操作请求的高并发状态,某些通信设备300的操作需要严格按照数据操作请求的先后顺序进行操作。例如,在通过集群系统10对交换机进行配置的过程中,需要按照配置请求的先后顺序进行配置,如果没有按照顺序对交换机进行配置,那么就会出现最终的配置结果不是用户预期的情况。如果集群系统10在接收到配置请求后,为了避免顺序错乱而对配置请求进行排队依次处理的话,例如采用可扩展标记语言xml文件的形式对配置请求向交换机顺序下发,那么就会由于发送配置请求比较耗时,使配置请求处于排队处理状态,如果发生短时间内出现大量配置请求的高并发情况,这样的处理方式就会大大降低系统的处理能力和并发性能。
本发明实施例中的集群系统10可以通过配置接口接收到数据操作请求,第一集群100中不同的第一节点101可以接收到不同的数据操作请求,这些数据操作请求可以是针对同一台通信设备300的,不同数据操作请求对应的通信设备300可以作为目标通信设备。如前所述,不同第一节点101接收到的数据操作请求可以是针对同一台交换机的不同的配置请求,该交换机即为目标通信设备。
步骤S102,所述至少两个第一节点101对为所述目标通信设备预设的第一分布式锁进行竞争。
在第一集群100接收到至少两个针对同一台通信设备300的数据操作请求时,该通信设备300可以作为目标通信设备,分别接收到数据操作请求的至少两个第一节点101就可以对为该目标通信设备预设的第一分布式锁进行竞争。分布式锁,是控制分布式系统之间同步访问共享资源的一种机制。在分布式系统中,常常需要协调不同节点的动作。如果不同的系统或是同一个系统的不同主机之间共享了一个或一组资源,那么访问这些资源的时候,往往需要互斥来防止彼此干扰来保证不同节点访问到的共享资源是一致的。分布式锁的机制使得只有得到了分布式锁的系统或主机才能对共享资源进行访问或处理。可以为需要共享的资源配置对应的分布式锁,由分布式锁管理器对分布式锁进行管理,不同的系统或主机节点对分布式锁进行竞争的机制可以为:不同的系统或主机节点在需要对共享资源进行访问时,先向分布式锁管理器提交需要访问共享资源的请求,分布式锁管理器再对多个系统或主机的请求进行处理,从多个系统或主机中选择一个系统或一个主机作为需要访问的共享资源的分布式锁的获得者。得到该分布式锁的系统或主机就可以对共享资源进行访问,在访问期间,其他没有得到分布式锁的系统或主机是没有权限对共享资源进行访问的。
可以理解的是,多个第一节点101对第一分布式锁进行竞争可以是,多个第一节点101向分布式锁管理器申请第一分布式锁,分布式锁管理器根据多个第一节点101的申请确定第一分布式锁的唯一获得节点,获得了该第一分布式锁的第一节点101就具有了对存储空间进行操作的权限,其他没有获得第一分布式锁的第一节点101就不具备对存储空间进行操作的权限。
详细的,本申请实施例中的数据操作请求中可以包含目标通信设备的标识信息,例如数据操作请求中可以包含目标通信设备的IP地址、预先配置的设备标识等等。第一节点101可以根据目标通信设备的标识信息确定对应的第一分布式锁。不同的通信设备300对应有不同的第一分布式锁,与目标通信设备对应的第一分布式锁就可以实现不同第一节点101的互斥操作,保证在同一时间内只有一个第一节点101可以对该节点获得的数据操作请求进行处理。例如,第一集群100中的两个第一节点101分别接收到了针对IP地址为10.0.0.3的交换机的配置请求,IP地址为10.0.0.3的交换机可以作为目标通信设备。集群系统10预先为IP地址为10.0.0.3的交换机配置第一分布式锁,两个第一节点101就可以对该第一分布式锁进行竞争。
步骤S103,竞争得到所述第一分布式锁的第一节点101将对应的数据操作请求进行存储。
竞争得到第一分布式锁的第一节点101在对数据操作请求进行处理时,由于第一分布式锁的互斥特性,其他没有竞争得到第一分布式锁的第一节点101不能对各自的数据操作请求进行处理。
在本申请实施例中,竞争得到第一分布式锁的第一节点101可以将获得的数据操作请求在存储空间400中进行存储,数据操作请求可以存储在预先配置的数据库、缓存、消息队列或其他存储空间中。在使用数据库对数据操作请求进行存储时,可以采用ID自增的方式进行存储。详细的,数据库被配置为ID自增长的形式时,其中的ID为标明数据操作请求存储时的数字序列,在进行数据操作请求的存储时,按照存储的顺序使用自然数来标识数据操作请求的ID。例如,第n+1条存储的数据存储请求的ID为第n条数据操作请求的ID加1。实际上是根据数据存储的时间顺序对数据操作请求进行顺序存储。在一个数据库中可以存储一个目标通信设备对应的数据操作请求,也可以存储不同目标通信设备对应的数据操作请求,通过不同目标通信设备不同的标识信息对存储的数据操作请求进行区分。
此外,在使用消息队列对数据操作请求进行存储时,可以通过预设的算法将针对同一台目标通信设备的数据操作请求存储在同一个消息队列中,保证数据操作请求的存储是按照时间的先后顺序进行存储的。本发明实施例并不限定数据操作请求的具体存储格式,但需要保证数据操作请求的存储是按照时间顺序进行存储的,以此来保证数据操作请求的顺序存储,保证后续数据操作时的准确顺序。
步骤S104,所述第二集群200中的第二节点201对为所述目标通信设备预设的第二分布式锁进行竞争。
第一集群100中的第一节点101通过对第一分布式锁的竞争,完成数据操作请求的存储后,第一集群100可以通知第二集群200进行后续步骤。例如,第一集群100可以通过向第二集群200发送RPC(Remote Procedure Call Protocol,远程过程调用协议)消息的形式通知第二集群200。第一集群100中的已经完成数据操作请求存储的第一节点101可以通过发送RPC消息的形式通知第二集群中的所有节点。通知消息中可以包含目标通信设备的标识信息,第二集群200中的第二节点201就可以进行与目标通信设备对应的第二分布式锁的竞争。第二分布式锁也是针对目标通信设备预先设置的,第二分布式锁同样具有互斥特性,在竞争得到第二分布式锁的第二节点201对数据操作请求进行处理时,其他没有竞争得到第二分布式锁的第二节点201不能对数据操作请求进行处理。
步骤S105,竞争得到所述第二分布式锁的第二节点201根据时间信息从已存储的数据操作请求中获得一条数据操作请求。
步骤S106,竞争得到所述第二分布式锁的第二节点201对所述目标通信设备进行数据操作。
第二集群200可以包括多个第二节点201,多个第二节点201中竞争得到第二分布式锁的第二节点201可以对数据操作请求进行处理。处理的过程可以是从预先存储数据操作请求的存储空间400中,获得与目标通信设备对应的存储时间最早的一条数据操作请求,并根据该存储时间最早的数据操作请求包含的操作信息,对目标通信设备进行数据操作。如前所述,多个第一节点101通过对第一分布式锁的竞争完成了数据操作请求的顺序存储,第二集群200中的第二节点201通过对第二分布式锁的竞争实现对数据操作请求的顺序取出,从而实现数据操作请求的顺序下发,保证数据操作的正确顺序。例如,第一节点101通过对第一分布式锁的竞争,将针对IP地址为10.0.0.3的交换机的配置请求按照时间顺序进行了存储。第二集群200中的多个第二节点201通过对第二分布式锁的竞争,使得在同一时间只有一个第二节点201可以对已存储的配置请求进行处理,并且,竞争得到第二分布式锁的第二节点201可以获得存储时间最早的配置请求,并根据该条配置请求对IP地址为10.0.0.3的交换机进行配置。通过第一集群100和第二集群200的配合,实现对配置请求的顺序处理,完成对交换机的顺序配置。
本发明实施例中,在第一集群100和第二集群200的处理中都设置了分布式锁的机制,并通过第一集群100中的第一节点101在竞争得到第一分布式锁后,先通过存储空间400对数据操作请求进行存储,才能保证数据操作请求的顺序处理。第二集群200中的第二节点201接收到的针对目标通信设备的数据操作请求可能是多个,多个第二节点201如果直接对竞争得到第二分布式锁的节点对应的数据操作请求直接进行操作,是仍然不能保证数据操作请求的先后顺序,需要通过存储空间400对数据操作请求按照时间顺序进行存储。竞争得到第二分布式锁的第二节点201再根据时间顺序从已存储的数据操作请求中,获得存储时间最早的数据操作请求,保证已存储的数据操作请求的FIFO(First Input First Output,先进先出),从而实现数据操作请求的顺序处理。
在另一种具体实施方式中,在一个数据操作请求完成了存储之后,为了继续进行其他数据操作请求的存储,在竞争得到所述第一分布式锁的第一节点101将对应的数据操作请求进行存储的步骤之后,还可以继续进行第一分布式锁的竞争,如图3所示,该方法可以包括以下步骤。
步骤S201-步骤S203与步骤S101-步骤S103相同,这里不再赘述。
步骤S204,释放所述第一分布式锁,以使其他获得数据操作请求的第一节点101开始竞争该第一分布式锁。
步骤S205-步骤S207与步骤S104-步骤S106相同,这里不再赘述。
第一集群100中的第一节点101通过对第一分布式锁的竞争,实现数据操作请求的顺序存储。在一个竞争得到第一分布式锁的第一节点101完成数据操作请求的存储后,就可以将第一分布式锁释放,使其他获得数据操作请求的第一节点101继续进行第一分布式锁的竞争,以继续进行其他数据操作请求的存储。第一集群100对数据操作请求的处理和第二集群200对数据操作请求的处理可以是同时进行的,从而可以提高集群系统10的处理速度。
在另一种具体实施方式中,为了在完成一次对通信设备300的数据操作后,继续进行其他数据操作请求的处理,在竞争得到所述第二分布式锁的第二节点201对所述目标通信设备进行配置的步骤之后,还可以继续进行第二分布式锁的竞争。具体的,如图4所示,该方法可以包括以下步骤。
步骤S301-步骤S306与步骤S101-步骤S106相同,这里不再赘述。
步骤S307,释放所述第二分布式锁。
步骤S308,从已存储的数据操作请求中删除竞争得到所述第二分布式锁的第二节点201对应的数据操作请求。
可以理解的是,一个得到第二分布式锁的第二节点201在完成数据操作请求的处理后,可以释放已经得到的第二分布式锁,并可以将已经处理完成的数据操作请求从存储空间400中删除。第二集群200中的第二节点201就可以继续进行第二分布式锁的竞争,以及其他数据操作请求的处理。通过第二分布式锁的及时释放,可以保证数据操作请求的处理进程不会中断。同时,将已经完成的数据操作请求从存储空间中删除,可以避免后续的其他第二节点重新获得已经完成处理的数据操作请求,保证针对目标通信设备的操作不会出现重复。
为了防止第一分布式锁出现死锁的情况,在一种具体实施方式中,所述第一分布式锁可以具有租约,将竞争得到所述第一分布式锁的节点对应的数据操作请求进行存储的步骤包括:在所述第一分布式锁的租约内,将所述数据操作请求进行存储;如果在所述第一分布式锁的租约内没有完成存储,在所述第一分布式锁的租约到期后释放该第一分布式锁。
为了防止第二分布式锁出现死锁的情况,在一种具体实施方式中,所述第二分布式锁具有租约,根据竞争得到所述第二分布式锁的节点获得的数据操作请求对所述目标通信设备进行配置的步骤包括:在所述第二分布式锁的租约内进行所述数据操作请求的配置;如果在所述第二分布式锁的租约内没有完成配置,在所述第二分布式锁的租约到期后释放该第二分布式锁。
通过为第一分布式锁和第二分布式锁分别配置租约,第一分布式锁和第二分布式锁的租约时长可以相同也可以不同,可以防止第一分布式锁和第二分布式锁出现死锁的情况,避免系统由于可能出现的故障导致的不能继续处理的情况,保证数据操作请求的顺利处理。
本发明实施例提供了一种设备操作方法,通过集群系统10中的第一集群100和第二集群200的配合实现对通信设备300的数据操作。第一集群100中的第一节点101通过对第一分布式锁的竞争,可以实现数据操作请求的顺序存储。第二集群200中的第二节点201通过对第二分布式锁的竞争,可以实现对已存储的数据操作请求的顺序获得,并完成对目标通信设备的数据操作。通过两个分布式锁的机制,在集群系统10出现接收到大量数据操作请求的高并发情况,仍然可以通过第一分布式锁和第二分布式锁的互斥特性,实现大量数据操作请求的顺序处理。既可以保证数据操作请求的顺序处理,同时,可以提高第一集群100的吞吐量,并且第一集群100和第二集群200都可以横向扩展,提高系统的可用性和处理能力。
第二实施例
再如图1所示,本发明实施例还提供了一种集群系统10,包括第一集群100和第二集群200,第一集群100包括多个第一节点101,第二集群200包括多个第二节点201。
所述第一集群100中的至少两个第一节点101用于分别获得针对所述至少一个通信设备300其中一个目标通信设备的至少两个数据操作请求;对为所述目标通信设备预设的第一分布式锁进行竞争;竞争得到所述第一分布式锁的第一节点101将对应的数据操作请求进行存储。详细的,可参见上述方法实施例中步骤S101、步骤S102和步骤S103的描述。
所述第二集群200中的第二节点201用于对为所述目标通信设备预设的第二分布式锁进行竞争;竞争得到所述第二分布式锁的第二节点201根据时间信息从已存储的数据操作请求中获得一条数据操作请求,对所述目标通信设备进行数据操作。详细的,可参见上述方法实施例中步骤S104、步骤S105和步骤S106的描述。
所述数据操作请求包括所述目标通信设备的标识信息,所述至少两个第一节点101对为所述目标通信设备预设的第一分布式锁进行竞争的方法包括:
所述至少两个第一节点101根据所述目标通信设备的标识信息确定对应的第一分布式锁,并对该第一分布式锁进行竞争。
在一种具体实施方式中,竞争得到所述第一分布式锁的第一节点101将对应的数据操作请求进行存储的方法之后,所述第一节点101还用于释放所述第一分布式锁,以使其他获得数据操作请求的第一节点101开始竞争该第一分布式锁。详细的,可参见上述方法实施例中步骤S204的描述。
在一种具体实施方式中,竞争得到所述第二分布式锁的第二节点201根据时间信息从已存储的数据操作请求中获得一条数据操作请求的方法包括:从已存储的数据操作请求中获得存储时刻最早的数据操作请求。
在一种具体实施方式中,竞争得到所述第二分布式锁的第二节点201对所述目标通信设备进行配置的步骤之后,竞争得到所述第二分布式锁的第二节点201还用于释放所述第二分布式锁,并从已存储的数据操作请求中删除竞争得到所述第二分布式锁的第二节点201对应的数据操作请求。详细的,可参见上述方法实施例中步骤S307和步骤S308的描述。
在一种具体实施方式中,竞争得到所述第一分布式锁的第一节点101将对应的数据操作请求进行存储的步骤之后,竞争得到所述第一分布式锁的第一节点101还用于生成通知信息,发送至所述第二集群200,以通知所述第二集群200中的第二节点201对所述目标通信设备进行数据操作。
所述通信设备300可以为交换机,所述数据操作请求是对所述交换机进行配置的配置请求。
将竞争得到所述第一分布式锁的一个节点对应的数据操作请求进行存储的方法可以包括:按照ID自增的方式存储所述数据操作请求。详细的,可参见步骤S103的描述。
本发明实施例还提供了一种可读取存储介质,所述可读取存储介质内存储有指令,当所述指令在计算机上运行时,使得所述计算机作为上述第一节点101和\或第二节点201执行上述设备操作方法。
请参照图5,是本申请较佳的实施例提供的电子设备500的一种示意图。该电子设备500可以为上述集群系统10中的第一节点101或第二节点201。在本申请实施例中,所述电子设备500可以包括处理器501及存储器502,所述存储器502可用于存储可执行程序代码,所述处理器501用于读取所述存储器502中存储的可执行程序代码,所述可执行程序代码被所述处理器501执行时,使得该电子设备500可以作为第一节点101和\或第二节点201执行上述设备操作方法。
所述电子设备500的功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得电子设备500中的处理器501执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质可以包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本发明实施例提供了一种设备操作方法、集群系统、电子设备及可读取存储介质,集群系统中的第一集群和第二集群的配合实现对通信设备的数据操作。第一集群中的第一节点通过对第一分布式锁的竞争,可以实现数据操作请求的顺序存储。第二集群中的第二节点通过对第二分布式锁的竞争,可以实现对已存储的数据操作请求的顺序获得,并完成对目标通信设备的数据操作。通过两个分布式锁的机制,在集群系统出现接收到大量数据操作请求的高并发情况,仍然可以通过第一分布式锁和第二分布式锁的互斥特性,实现大量数据操作请求的顺序处理。既可以保证数据操作请求的顺序处理,同时,可以提高第一集群的吞吐量,并且第一集群和第二集群都可以横向扩展,提高系统的可用性和处理能力。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本发明的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本发明各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。