CN110324262B - 一种资源抢占的方法及装置 - Google Patents
一种资源抢占的方法及装置 Download PDFInfo
- Publication number
- CN110324262B CN110324262B CN201810277186.3A CN201810277186A CN110324262B CN 110324262 B CN110324262 B CN 110324262B CN 201810277186 A CN201810277186 A CN 201810277186A CN 110324262 B CN110324262 B CN 110324262B
- Authority
- CN
- China
- Prior art keywords
- resource
- identification
- client
- information
- server
- 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
- 238000000034 method Methods 0.000 title claims abstract description 66
- 238000004891 communication Methods 0.000 claims description 44
- 238000012545 processing Methods 0.000 claims description 23
- 230000004044 response Effects 0.000 claims description 10
- 101150053844 APP1 gene Proteins 0.000 description 60
- 101100189105 Homo sapiens PABPC4 gene Proteins 0.000 description 60
- 102100039424 Polyadenylate-binding protein 4 Human genes 0.000 description 60
- 101100055496 Arabidopsis thaliana APP2 gene Proteins 0.000 description 52
- 101100016250 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) GYL1 gene Proteins 0.000 description 52
- 230000006870 function Effects 0.000 description 18
- 238000013461 design Methods 0.000 description 15
- 238000010586 diagram Methods 0.000 description 10
- 101100264195 Caenorhabditis elegans app-1 gene Proteins 0.000 description 9
- 101710081949 Xaa-Pro aminopeptidase 3 Proteins 0.000 description 8
- 102100038359 Xaa-Pro aminopeptidase 3 Human genes 0.000 description 8
- 230000008878 coupling Effects 0.000 description 4
- 238000010168 coupling process Methods 0.000 description 4
- 238000005859 coupling reaction Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 230000006399 behavior Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 238000012790 confirmation Methods 0.000 description 2
- 235000019800 disodium phosphate Nutrition 0.000 description 2
- 238000000802 evaporation-induced self-assembly Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000014509 gene expression Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/70—Admission control; Resource allocation
- H04L47/78—Architectures of resource allocation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/70—Admission control; Resource allocation
- H04L47/80—Actions related to the user profile or the type of traffic
- H04L47/805—QOS or priority aware
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mobile Radio Communication Systems (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本申请的实施例提供一种资源抢占的方法,涉及分布式领域,用以解决客户端必须依赖协调者才能获取资源,导致的状态不一致的现象的问题。本申请的方法包括:第一客户端向服务端发送标识请求,标识请求用于请求标识第一资源,标识请求消息携带第一标识信息,然后第一客户端向服务端查询第一资源的争抢组信息,争抢组信息包括各客户端对第一资源的标识信息,进而若第一客户端确定争抢组信息中不存在其他标识信息的优先级高于第一标识信息的优先级,则第一客户端占用第一资源;若第一客户端确定争抢组信息中存在其他标识信息的优先级高于第一标识信息的优先级,则第一客户端放弃第一资源。本申请的实施例适用于资源抢占的流程中。
Description
技术领域
本申请涉及分布式领域,尤其涉及一种资源抢占的方法及装置。
背景技术
在分布式环境下,涉及到一些资源排他性获取场景,资源池中的一个资源实例只能被一个集群应用实例获取,目前存在三种资源获取的方法,分别为一阶段事务提交协议(One Phase Commitment Protocol,1PC)、二阶段事务提交协议(Two Phase CommitmentProtocol,2PC)和三阶段事务提交协议(Three Phase Commitment Protocol,3PC)。
其中,1PC是指,客户端获取资源提供方的信息之后,可直接向资源提供方申请占用资源,然而在客户端在获取资源提供方的信息之后,发起占用资源请求之前,资源可能已经被其他客户端占用,会出现状态不一致的情况。2PC分为准备阶段和提交阶段,为了保证事务一致性,当一个事务跨越多个节点时,可以引入一个作为协调者的组件来统一掌握多个节点(可称为参与者)的操作,在准备阶段,参与者将操作成败通知协调者,然后在提交阶段,协调者若确定各参与者均操作成功,则提交操作,若存在参与者操作失败,则中止操作。3PC在2PC的第一阶段和第二阶段之间插入了一个准备阶段,可以保证在提交阶段之前,各参与者的状态是一致的。
然而,若采用上述2PC或3PC,客户端均需要依赖协调者才能够获取资源,需要维护协调者与参与者之间的连接等信息,一旦协调者发出提交消息后宕机,而能够接收到提交消息的参与者也发生宕机,就会出现协调者认为参与者已获取资源,而实际上参与者未接收到提交消息的情况发生,导致协调者与参与者的状态不一致。
发明内容
本申请提供一种资源抢占的方法及装置,用以解决客户端必须依赖协调者才能获取资源,导致的状态不一致的现象的问题。
第一方面,本申请的实施例提供一种资源抢占的方法,该方法包括:第一客户端向服务端发送标识消息,标识消息用于标识第一资源,标识消息携带第一标识信息,然后第一客户端向服务端查询第一资源的争抢组信息,争抢组信息包括各客户端对第一资源的标识信息,进而若第一客户端确定争抢组信息中不存在其他标识信息的优先级高于第一标识信息的优先级,则第一客户端占用第一资源;若第一客户端确定争抢组信息中存在其他标识信息的优先级高于第一标识信息的优先级,则第一客户端放弃第一资源。采用该方法,第一客户端需要占用第一资源时,可先标识第一资源,进而根据争抢组信息就可以确定占用第一资源还是放弃第一资源,无需协调者参与,避免出现由于协调者宕机而产生的状态不一致的现象。
在一种可能的设计中,第一标识信息包括第一客户端标识、第一客户端对第一资源的标识时间以及标识状态。
在一种可能的设计中,争抢组信息中不存在其他标识信息的优先级高于第一标识信息的优先级,包括:
争抢组信息中,除第一客户端之外的其他客户端对第一资源的标识状态均为放弃状态;或者,
争抢组信息中,各客户端对第一资源的标识状态均为初始状态,且不存在其他客户端对第一资源的标识时间早于第一客户端对第一资源的标识时间;或者,
争抢组信息中,各客户端对第一资源的标识状态均为初始状态,存在第二客户端对第一资源的标识时间与第一客户端对第一资源的标识时间相同,且第一客户端标识小于第二客户端标识,其中,第一客户端和第二客户端对第一资源的标识时间早于争抢组信息中的其他客户端对第一资源的标识时间。
采用该方法,第一客户端根据争抢组信息就可以确定自身是否可以抢占第一资源,由于争抢组信息中包括各客户端对第一资源的标识信息,所以各客户端根据争抢组信息的判断结果是一致的,例如,若第一客户端确定自身可以抢占第一资源,其他客户端也可以根据争抢组信息放弃第一资源,无需协调者的参与,且可以保证事务一致性。
在一种可能的设计中,在第一客户端向服务端发送标识消息之前,第一客户端向服务端发送资源查询请求,资源查询请求用于查询服务端的可用资源,然后第一客户端接收来自服务端的可用资源信息,可用资源包括第一资源。
在一种可能的设计中,第一客户端占用第一资源,具体可以实现为:第一客户端向服务端发送状态更新消息,状态更新消息用于请求将第一客户端对第一资源的标识状态更新为提交状态。采用该方法,第一客户端请求将第一资源的标识状态更新为提交状态后,其他客户端就无法抢占第一资源,进而保证第一客户端能够成功占有第一资源,避免第一客户端认为自身可以抢占第一资源,但实际上第一资源被其他客户端占用而导致的状态不一致的现象。
在一种可能的设计中,第一客户端放弃第一资源,具体可以实现为:第一客户端向服务端发送状态更新消息,状态更新消息用于请求将第一客户端对第一资源的标识状态更新为放弃状态。采用该方法,第一客户端放弃第一资源后,将第一资源的标识状态更新为放弃状态,可以使得其他客户端可以抢占第一资源,保证状态一致性。
第二方面,本申请的实施例提供一种资源抢占的方法,该方法包括:
服务端接收来自第一客户端的标识消息,标识消息用于请求标识第一资源,标识消息携带第一标识信息,然后响应于第一客户端的查询操作,服务端向第一客户端发送第一资源的争抢组信息,争抢组信息包括各客户端对第一资源的标识信息,进而服务端接收来自第一客户端的状态更新消息,若争抢组信息中不存在其他标识信息的优先级高于第一标识信息的优先级,则状态更新消息用于请求将第一客户端对第一资源的标识状态更新为提交状态;若争抢组中存在其他标识信息的优先级高于第一标识的优先级,则状态更新消息用于请求将第一客户端对第一资源的标识状态更新为放弃状态;服务端根据状态更新消息更新第一客户端对第一资源的标识状态。采用该方法,第一客户端需要占用第一资源时,服务端可接收来自第一客户端的标识消息,然后存储第一客户端对第一资源的标识信息,然后向第一客户端提供争抢组信息,以便于第一客户端根据争抢组信息确定占用第一资源还是放弃第一资源,无需协调者参与,避免出现由于协调者宕机而产生的状态不一致的现象。
在一种可能的设计中,第一标识信息包括第一客户端标识、第一客户端对第一资源的标识时间以及标识状态。
在一种可能的设计中,争抢组信息中不存在其他标识信息的优先级高于第一标识信息的优先级,包括:
争抢组信息中,除第一客户端之外的其他客户端对第一资源的标识状态均为放弃状态;或者,
争抢组信息中,各客户端对第一资源的标识状态均为初始状态,且不存在其他客户端对第一资源的标识时间早于第一客户端对第一资源的标识时间;或者,
争抢组信息中,各客户端对第一资源的标识状态均为初始状态,存在第二客户端对第一资源的标识时间与第一客户端对第一资源的标识时间相同,且第一客户端标识小于第二客户端标识,其中,第一客户端和第二客户端对第一资源的标识时间早于争抢组信息中的其他客户端对第一资源的标识时间。
采用该方法,第一客户端根据争抢组信息就可以确定自身是否可以抢占第一资源,由于争抢组信息中包括各客户端对第一资源的标识信息,所以各客户端根据争抢组信息的判断结果是一致的,例如,若第一客户端确定自身可以抢占第一资源,其他客户端也可以根据争抢组信息放弃第一资源,无需协调者的参与,且可以保证事务一致性。
在一种可能的设计中,在服务端接收来自第一客户端的标识消息之前,服务端可以接收来自第一客户端的资源查询请求,资源查询请求用于查询服务端的可用资源,然后服务端向第一客户端发送可用资源信息,可用资源信息包括第一资源。
第三方面,本申请实施例提供一种装置,该装置具有实现上述方法设计中第一客户端行为的功能。所述功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。所述硬件或软件包括一个或多个与上述功能相对应的模块。例如,该装置可以为第一客户端,或者可以为第一客户端中的芯片。
在一种可能的设计中,该装置为客户端,该客户端为第一客户端,第一客户端包括处理器,所述处理器被配置为支持第一客户端执行上述方法中相应的功能。进一步地,第一客户端还可以包括发射器和接收器,所述发射器和接收器用于支持第一客户端与服务端之间的通信。进一步的,第一客户端还可以包括存储器,所述存储器用于与处理器耦合,其保存客户端必要的程序指令和数据。
第四方面,本申请实施例提供一种装置,该装置具有实现上述方法设计中服务端行为的功能。所述功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。所述硬件或软件包括一个或多个与上述功能相对应的模块。例如,该装置可以为服务端,或者可以为服务端中的芯片。
在一种可能的设计中,该装置为服务端,该服务端包括处理器,所述处理器被配置为支持服务端执行上述方法中相应的功能。进一步地,服务端还可以包括发射器和接收器,所述发射器和接收器用于支持服务端与客户端之间的通信。进一步的,服务端还可以包括存储器,所述存储器用于与处理器耦合,其保存服务端必要的程序指令和数据。
第五方面,本申请实施例提供一种通信系统,该系统包括上述方面所述的服务端和客户端。
第六方面,本申请实施例提供一种计算机存储介质,用于储存为上述用于客户端所用的计算机软件指令,其包含用于执行上述第一方面所设计的程序。
第七方面,本申请实施例提供一种计算机存储介质,用于储存为上述用于服务端所用的计算机软件指令,其包含用于执行上述第二方面所设计的程序。
第八方面,本申请的实施例提供一种包括指令的计算机程序产品,当其在计算机上运行时,使得计算机执行如上述第一方面所述的方法。
第九方面,本申请的实施例提供一种包括指令的计算机程序产品,当其在计算机上运行时,使得计算机执行如上述第二方面所述的方法。
本申请的实施例提供的方法,第一客户端需要占用第一资源时,可先标识第一资源,进而根据争抢组信息就可以确定占用第一资源还是放弃第一资源,无需协调者参与,避免出现由于协调者宕机而产生的状态不一致的现象。
附图说明
图1为本申请的实施例提供的一种分布式系统的结构示意图;
图2为本申请的实施例提供的一种资源抢占的方法的流程图;
图3为本申请的实施例提供的另一种资源抢占的方法的流程图;
图4为本申请的实施例提供的一种资源抢占的方法的示例性示意图;
图5为本申请的实施例提供的一种装置的结构示意图;
图6为本申请的实施例提供的一种客户端的结构示意图;
图7为本申请的实施例提供的另一种装置的结构示意图;
图8为本申请的实施例提供的一种服务端的结构示意图。
具体实施方式
下面将结合附图对本申请作进一步地详细描述。方法实施例中的具体操作方法也可以应用于装置实施例或系统实施例中。其中,在本申请的描述中,除非另有说明,“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“/”表示或的意思,例如,A/B可以表示A或B;本文中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况,其中A,B可以是单数或者复数。“以下至少一项(个)”或其类似表达,是指的这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b,和c中的至少一项(个),可以表示:a,b,c,a和b,a和c,b和c,或a、b和c,其中a,b,c可以是单个,也可以是多个。另外,为了便于清楚描述本申请实施例的技术方案,在本申请的实施例中,采用了“第一”、“第二”等字样对功能和作用基本相同的相同项或相似项进行区分。本领域技术人员可以理解“第一”、“第二”等字样并不对数量和执行次序进行限定,并且“第一”、“第二”等字样也并不限定一定不同。
本申请实施例描述的网络架构以及业务场景是为了更加清楚的说明本申请实施例的技术方案,并不构成对于本申请实施例提供的技术方案的限定,本领域普通技术人员可知,随着网络架构的演变和新业务场景的出现,本申请实施例提供的技术方案对于类似的技术问题,同样适用。
需要说明的是,本申请中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本申请中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其他实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。
需要说明的是,本申请中“的(英文:of)”,相应的“(英文corresponding,relevant)”和“对应的(英文:corresponding)”有时可以混用,应当指出的是,在不强调其区别时,其所要表达的含义是一致的。
在详细描述本申请的技术方案之前,为了便于理解,先对本申请的实施例所应用的场景进行介绍。
本申请的实施例可以应用于图1所示的分布式系统中,该系统中包括服务端以及至少两个客户端。
其中,服务端为资源提供方,服务端中包括资源池,资源池中有可供客户端使用的资源,示例性的,资源池中可以为一个资源序列包括资源1、2、3……客户端可按照资源序列中的资源排序来优先获取序列号较小的资源。
客户端也可以为应用组件,示例性地可以为应用程序(Application,APP)。可选地,各客户端所在的节点可通过网络时间协议(Network Time Protocol,NTP)时钟同步。
基于图1所示的分布式系统,本申请的实施例提供了一种资源抢占的方法,如图2所示,该方法包括:
步骤201、第一客户端向服务端发送标识消息,相应的,服务端接收来自第一客户端的标识消息。
其中,第一客户端可以为图1中的任意一个客户端,标识请求消息用于请求标识第一资源,标识请求消息携带第一标识信息,第一标识信息包括第一客户端标识、第一客户端对第一资源的标识时间(可称为createtime)以及标识状态。可选地,标识状态可以为init(初始状态)、abandoned(放弃状态)、commited(提交状态)。其中,第一标识信息中标识的第一状态为init。
可选地,若当前服务端中第一个可用的资源为第一资源,则第一客户端可请求标识第一资源。
步骤202、服务端存储第一标识信息。
其中,服务端可保存如下数据结构:key=list<客户端标识:createtime:updatetime:{init或abandoned或commited}>。可选地,createtime和updatetime的单位均为毫秒,
客户端标识的结构为:客户端标识={$AppType}:{$ip}。
示例性地,第一客户端对第一资源的标识结果为:
第一资源的ID:客户端标识1=createtime:updatetime:{init}。
步骤203、第一客户端向服务端查询第一资源的争抢组信息。
其中,争抢组信息包括各客户端对第一资源的标识信息。
示例性地,争抢组信息可以为:
第一资源的ID:客户端标识1=createtime:updatetime:{init}
客户端标识2=createtime:updatetime:{init}
步骤204、若第一客户端确定争抢组信息中不存在其他标识信息的优先级高于第一标识信息的优先级,则第一客户端占用第一资源。
其中,若第一客户端确定占用第一资源,可向服务端发送状态更新消息,以将第一资源的标识状态更新为commited。
争抢组信息中不存在其他标识信息的优先级高于第一标识信息的优先级包括以下三种情形。
情形一:争抢组信息中,除第一客户端之外的其他客户端对第一资源的标识状态均为放弃状态。
情形二:争抢组信息中,各客户端对第一资源的标识状态均为初始状态,且不存在其他客户端对第一资源的标识时间早于第一客户端对第一资源的标识时间。
情形三:争抢组信息中,各客户端对第一资源的标识状态均为初始状态,存在第二客户端对第一资源的标识时间与第一客户端对第一资源的标识时间相同,且第一客户端标识小于第二客户端标识。需要说明的是,在这种情形下,第一客户端和第二客户端对第一资源的标识时间早于争抢组信息中其他客户端对第一资源的标识时间。
步骤205、若第一客户端确定争抢组信息中存在其他标识信息的优先级高于第一标识信息的优先级,则第一客户端放弃第一资源。
其中,若第一客户端确定放弃第一资源,可向服务端发送状态更新消息,以将第一资源的标识状态更新为abandoned。
本申请的实施例提供的资源抢占的方法,第一客户端需要占用第一资源时,可先标识第一资源,进而根据争抢组信息就可以确定占用第一资源还是放弃第一资源,无需协调者参与,避免出现由于协调者宕机而产生的状态不一致的现象。
以下结合具体场景对本申请实施例提供的资源抢占的方法进行详细说明,示例性地,分布式系统中的APP1、APP2和APP3当前需要获取资源,资源池中包括资源序{1,2,3,4,5…},假设当前第一个可用的资源为资源2。如图3所示,以APP1、APP2、APP3与服务端之间的交互流程为例进行说明,该方法包括竞争阶段和仲裁阶段,其中竞争阶段包括步骤301至步骤308,仲裁阶段包括步骤312至步骤321。
步骤301、APP1向服务端发送资源查询请求,资源查询请求用于查询可用资源。相应地,服务端接收来自APP1的资源查询请求。
步骤302、服务端向APP1发送可用资源信息。相应地,APP1接收来自服务端的可用资源信息。
示例性地,若资源池中的资源1已经被占用,则可用资源信息可以为{2,3,4,5…}。
步骤303、APP1向服务端发送资源2的标识消息。相应地,服务端接收来自APP1的标识消息。
可选地,APP1在发送资源2的标识消息之前,需判断是否具备资源2的竞争条件,若资源2未被其他APP标识为init,则APP1具备资源2的竞争条件。
其中,APP1发送的标识消息携带第一标识信息,第一标识信息包括APP1的标识、标识时间(createtime)和标识状态init。
可以理解的是,服务端接收到标识消息后,可存储标识消息中的第一标识信息,APP1对资源2的标识结果为:
资源2:APP1=createtime:updatetime:{init}。
步骤304、服务端向APP1发送标识成功响应。相应地,APP1接收来自服务端的标识成功响应。
步骤305、APP2向服务端发送资源查询请求,资源查询请求用于查询可用资源。相应地,服务端接收来自APP2的资源查询请求。
步骤306、服务端向APP2发送可用资源信息。相应地,APP2接收来自服务端的可用资源信息。
示例性地,若资源池中的资源1已经被占用,则可用资源信息可以为{2,3,4,5…}。
步骤307、APP2向服务端发送资源2的标识消息。相应地,服务端接收来自APP2的标识消息。
可选地,APP2在发送资源2的标识消息之前,需判断是否具备资源2的竞争条件,若资源2未被其他APP标识为init,则APP2具备资源2的竞争条件。
其中,APP2发送的标识消息携带第二标识信息,第二标识信息包括APP2的标识、标识时间(createtime)和标识状态init。
可以理解的是,服务端接收到标识消息后,可存储标识消息中的第二标识信息,APP2对资源2的标识结果为:
资源2:APP2=createtime:updatetime:{init}。
步骤308、服务端向APP1发送标识成功响应。相应地,APP1接收来自服务端的标识成功响应。
需要说明的是,上述步骤301至步骤304与步骤305至步骤308之间是并发执行的,但是有可能存在较小的时间间隔。示例性地,APP2获取可用资源时,APP1可能还未对资源2进行标识,当APP1对资源2进行标识成功后,APP2并不知道资源2已经被标识,仍然继续对资源2进行标识,这样,APP1和APP2均将资源2标识为init状态,就形成了争抢组。
步骤309、APP3向服务端发送资源查询请求,资源查询请求用于查询可用资源。相应地,服务端接收来自APP3的资源查询请求。
步骤310、服务端向APP3发送可用资源信息。相应地,APP3接收来自服务端的可用资源信息。
示例性地,若资源池中的资源1已经被占用,则可用资源信息可以为{2,3,4,5…}。
可以理解的是,在APP1和APP2已经标识资源2,但还未占用资源2时,资源2仍处于空闲状态。
步骤311、APP3判断是否具备资源2的竞争条件,若不具备,则竞争资源3。
可以理解的是,若资源2已经被标识为init,则不具备资源2的竞争条件。APP3竞争资源3的的方法与APP1和APP2竞争资源2的方法相同,此处不再赘述。
可选地,下述步骤312至步骤316为APP1对资源2的仲裁流程,步骤317至步骤321为APP2对资源2的仲裁流程。APP1对资源2的仲裁流程与APP2对资源2的仲裁流程是并发执行的。
步骤312、APP1向服务端查询资源2的争抢组信息。
步骤313、服务端向APP1发送资源2的争抢组信息,相应地,APP1接收来自服务端的争抢组信息。
其中,在上述步骤中,APP1和APP2均已标识资源2,则争抢组信息为:
资源2:APP1=createtime1:updatetime1:{init}
APP2=createtim2:updatetime2:{init}
步骤314、APP1根据争抢组信息判断自身是否可以占用资源2。
其中,若createtime1早于createtim2,则APP1可以占用资源2,若createtime1和createtim2相同,但APP1的标识小于APP2的标识,则APP1可占用资源2。
步骤315、APP1向服务端发送资源2的状态更新消息,相应地,服务端接收来自APP1的状态更新消息。
其中,状态更新消息用于请求将APP1对资源2的标识状态更新为commited。更新后的APP1对资源2的标识信息可表示为:APP1=createtime1:updatetime1:{commited}。
步骤316、服务端向APP1发送更新成功响应,相应地,APP1接收来自服务端的更新成功响应。
步骤317、APP2向服务端查询资源2的争抢组信息。
步骤318、服务端向APP2发送资源2的争抢组信息,相应地,APP2接收来自服务端的争抢组信息。
其中,在上述步骤中,APP1和APP2均已标识资源2,则争抢组信息为:
资源2:APP1=createtime1:updatetime1:{init}
APP2=createtim2:updatetime2:{init}
步骤319、APP2判断根据争抢组信息判断自身是否可以占用资源2。
其中,若createtime1早于createtim2,则APP2不可以占用资源2,若createtime1和createtim2相同,但APP1的标识小于APP2的标识,则APP1不可占用资源2。
步骤320、APP2向服务端发送资源2的状态更新消息,相应地,服务端接收来自APP2的状态更新消息。
其中,由于APP2不可占用资源2,所以状态更新消息用于请求将APP2对资源2的标识状态更新为abandoned。更新后的APP2对资源2的标识信息可表示为:APP2=createtime2:updatetime2:{abandoned}。
步骤321、APP2向服务端发送更新成功相应,相应地,APP2接收来自服务端的更新成功响应。
可以理解的是,在完成仲裁阶段之后,服务端中存储的资源2的key值为:
APP1=createtime1:updatetime1:{commited}
APP2=createtim2:updatetime2:{abandoned}
采用该方法,无需协调者参与,APP1和APP2可各自决定是否可以占用资源2,进而避免了由于协调者宕机而出现的状态不一致的现象。
进一步地,在图3所示的方法中,APP1和APP2均存在两个盲区,示例性地,可参考图4,在APP1获知资源2处于可用状态,至APP1请求将资源2的状态标识为init的时间段内,APP1无法获知资源2的状态变化,这段时间为APP1的盲区1。然后,在APP1获取到争抢组信息,至APP1占用资源2的时间段内,APP1也无法获知资源2的状态变化,这段时间为APP1的盲区2。同理,APP2也存在盲区1和盲区2。
参考图4,APP1的盲区1和APP2的盲区1的终点相同,存在一种情况,APP1和APP2都在第1秒向服务端发送标识消息,即APP1和APP2的标识信息中的createtime均为第1秒,但是APP1由于通信质量好等原因,在第3秒成功将资源2的状态标识为init,APP2在第7秒才成功将资源2的状态标识为init。
若APP1在第5秒获取了争抢组信息,此时APP2还没标识成功,争抢组信息中只包括APP1对资源2的标识信息,进而APP1就会认为自身可以抢占资源2。APP2在第7秒之后才可以获取争抢组信息,APP2获取到的争抢组信息中APP1和APP2对资源2的标识时间均为第1秒,若APP2的客户端标识小于APP1的客户端标识,APP2也会抢占资源2。会导致APP1将资源2的状态跟新为commited之后,以为自身已经抢占到了资源2,实际上资源2已经被APP2占用,出现状态不一致的问题。为了解决这个问题,可以设置盲区时长小于n毫秒,示例性地,n可以为300,且设置竞争阶段和仲裁阶段之间的时间间隔大于m秒,示例性地,m可以为1,且仲裁成功后需再次确认。
具体地,在APP对某一资源(例如资源3)进行仲裁时,如果满足以下任意一个条件,则将自身对资源3的标识状态更新为commited。
条件1:存在其他APP对资源3的标识状态为init,但其他客户端的createtime晚于自身的createtime。
条件2:争抢组信息中不存在其他APP对资源3的标识记录。
条件3:其他的客户端对资源3的标识状态均为abandoned。
可选地,在APP将自身对资源3的标识状态修改为commited,可以休眠指定时间,之后重新获取争抢组信息,并根据争抢组信息进行确认自身是否可以获取资源3。
在确认过程中,若满足以下任意一个条件,则放弃资源3,将对资源3的标识状态修改为abandoned,并争抢其他资源;若不满足以下所有条件,则获取资源3。
条件1:争抢组中存在其他客户端的标识状态为init,且其他客户端的createtime早于自身的createtime。
条件2:争抢组中存在其他客户端对资源3的标识状态为commited。
采用该方法,APP在仲裁阶段将自身对资源的标识状态修改为commited,可通过确认流程来判断是否可以获取资源,可以避免由于存在盲区或其他原因而导致的状态不一致的问题。
可选地,本申请对于服务端失效和客户端失效的情况也给出了相应的解决办法。
服务端失效的处理方法可参考表1。
表1
客户端失效的处理方法可参考表2。
表2
上述主要从客户端与服务端之间交互的角度对本申请实施例提供的方案进行了介绍。可以理解的是,客户端和服务端为了实现上述功能,包含了执行各个功能相应的硬件结构和/或软件模块。结合本申请中所公开的实施例描述的各示例的单元及算法步骤,本申请实施例能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。本领域技术人员可以对每个特定的应用来使用不同的方法来实现所描述的功能,但是这种实现不应认为超出本申请实施例的技术方案的范围。
本申请实施例可以根据上述方法示例对客户端和服务端等进行功能单元的划分,例如,可以对应各个功能划分各个功能单元,也可以将两个或两个以上的功能集成在一个处理单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。需要说明的是,本申请实施例中对单元的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
在采用集成的单元的情况下,图5示出了本发明实施例中提供的一种装置的示意性框图。该装置可以以软件的形式存在,例如终端中的APP,也可以为客户端,示例性地,可以为上文中的第一客户端。该装置500包括:处理单元502和通信单元503。处理单元502用于对装置500的动作进行控制管理。处理单元502可以支持装置500执行上述方法实施例中由第一客户端完成的动作,例如,处理单元502用于支持装置500执行图2中的步骤204和205,和/或用于本文所描述的技术的其它过程。当装置500为APP1时,处理单元502用于支持装置500执行图3中的步骤314;当装置500为APP2时,处理单元502用于支持装置500执行图3中的步骤319;当装置500为APP3时,处理单元502用于支持装置500执行图3中的步骤311。
通信单元503用于支持装置500和其他网元(例如服务端等)之间的通信。例如,通信单元503可以支持装置500执行图2中的步骤201和203,当装置500为APP1时,通信单元503可以支持装置500执行图3中的步骤301、302、303、304、312、313、315、316;当装置500为APP2时,通信单元503可支持装置500执行图3中的步骤305、306、307、308、317、318、320、321;当装置500为APP3时,通信单元503可支持装置500执行图3中的步骤309和310。
装置500还可以包括存储单元501,用于存储装置500的程序代码和数据。
其中,处理单元502可以是处理器或控制器,例如可以是中央处理器(CentralProcessing Unit,CPU),通用处理器,数字信号处理器(Digital Signal Processor,DSP),专用集成电路(Application-Specific Integrated Circuit,ASIC),现场可编程门阵列(Field Programmable Gate Array,FPGA)或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本发明公开内容所描述的各种示例性的逻辑方框,模块和电路。所述处理器也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等等。通信单元503可以是通信接口,其中,该通信接口是统称,在具体实现中,该通信接口可以包括多个接口。例如,该通信接口可以包括:客户端与服务端之间的接口和/或其他接口。存储单元501可以是存储器。
当处理单元502为处理器,通信单元503为通信接口,存储单元501为存储器时,本申请实施例所涉及的装置500的结构可以是如图6所示的客户端的结构。
图6示出了本申请实施例提供的客户端的一种可能的结构示意图。
如图6所示,该客户端600包括:处理器602、通信接口603、存储器601。可选的,客户端600还可以包括总线604。其中,通信接口603、处理器602以及存储器601可以通过总线604相互连接;总线604可以是PCI总线或EISA总线等。所述总线604可以分为地址总线、数据总线、控制总线等。为便于表示,图6中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
在采用集成的单元的情况下,图7示出了本发明实施例中提供的一种装置的示意性框图。该装置可以以软件的形式存在,也可以为服务端,该装置700包括:处理单元702和通信单元703。处理单元702用于对装置700的动作进行控制管理。处理单元702可以支持装置700执行上述方法实施例中由服务端完成的动作,例如,处理单元702用于支持装置700执行图2中的步骤202,和/或用于本文所描述的技术的其它过程。通信单元703用于支持装置700和其他网元(例如客户端等)之间的通信。例如,通信单元703可以支持装置700执行图2中的步骤201和203,图3中的步骤301至310、312、313、315至318、320和321。
装置700还可以包括存储单元701,用于存储装置700的程序代码和数据。
其中,处理单元702可以是处理器或控制器,例如可以是中央处理器(CentralProcessing Unit,CPU),通用处理器,数字信号处理器(Digital Signal Processor,DSP),专用集成电路(Application-Specific Integrated Circuit,ASIC),现场可编程门阵列(Field Programmable Gate Array,FPGA)或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本发明公开内容所描述的各种示例性的逻辑方框,模块和电路。所述处理器也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等等。通信单元703可以是通信接口,其中,该通信接口是统称,在具体实现中,该通信接口可以包括多个接口。例如,该通信接口可以包括:服务端与个客户端之间的接口和/或其他接口。存储单元701可以是存储器。
当处理单元702为处理器,通信单元703为通信接口,存储单元701为存储器时,本申请实施例所涉及的装置700的结构可以是如图8所示的服务端的结构。
图8示出了本申请实施例提供的服务端的一种可能的结构示意图。
如图8所示,该服务端800包括:处理器802、通信接口803、存储器801。可选的,服务端800还可以包括总线804。其中,通信接口803、处理器802以及存储器801可以通过总线804相互连接;总线804可以是PCI总线或EISA总线等。所述总线804可以分为地址总线、数据总线、控制总线等。为便于表示,图8中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
结合本申请公开内容所描述的方法或者算法的步骤可以硬件的方式来实现,也可以是由处理器执行软件指令的方式来实现。软件指令可以由相应的软件模块组成,软件模块可以被存放于随机存取存储器(Random Access Memory,RAM)、闪存、只读存储器(ReadOnly Memory,ROM)、可擦除可编程只读存储器(Erasable Programmable ROM,EPROM)、电可擦可编程只读存储器(Electrically EPROM,EEPROM)、寄存器、硬盘、移动硬盘、只读光盘(CD-ROM)或者本领域熟知的任何其它形式的存储介质中。一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于ASIC中。另外,该ASIC可以位于核心网接口设备中。当然,处理器和存储介质也可以作为分立组件存在于核心网接口设备中。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络设备上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个功能单元独立存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到本申请可借助软件加必需的通用硬件的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在可读取的存储介质中,如计算机的软盘,硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述的方法。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,在本申请揭露的技术范围内的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (16)
1.一种资源抢占的方法,其特征在于,包括:
第一客户端向服务端发送标识消息,所述标识消息用于标识第一资源,所述标识消息携带第一标识信息,所述第一标识信息包括第一客户端标识、所述第一客户端对所述第一资源的标识时间以及标识状态;
所述第一客户端向所述服务端查询第一资源的争抢组信息,所述争抢组信息包括各客户端对所述第一资源的标识信息;
若所述第一客户端确定所述争抢组信息中不存在其他标识信息的优先级高于所述第一标识信息的优先级,则所述第一客户端占用所述第一资源;
若所述第一客户端确定所述争抢组信息中存在其他标识信息的优先级高于所述第一标识信息的优先级,则所述第一客户端放弃所述第一资源。
2.根据权利要求1所述的方法,其特征在于,所述争抢组信息中不存在其他标识信息的优先级高于所述第一标识信息的优先级,包括:
所述争抢组信息中,除所述第一客户端之外的其他客户端对所述第一资源的标识状态均为放弃状态;或者,
所述争抢组信息中,各客户端对所述第一资源的标识状态均为初始状态,且不存在其他客户端对所述第一资源的标识时间早于所述第一客户端对所述第一资源的标识时间;或者,
所述争抢组信息中,各客户端对所述第一资源的标识状态均为初始状态,存在第二客户端对所述第一资源的标识时间与所述第一客户端对所述第一资源的标识时间相同,且所述第一客户端标识小于第二客户端标识,其中,所述第一客户端和所述第二客户端对所述第一资源的标识时间早于所述争抢组信息中的其他客户端对所述第一资源的标识时间。
3.根据权利要求1或2所述的方法,其特征在于,在所述第一客户端向服务端发送标识消息之前,所述方法还包括:
所述第一客户端向所述服务端发送资源查询请求,所述资源查询请求用于查询所述服务端的可用资源;
所述第一客户端接收来自所述服务端的可用资源信息,所述可用资源包括所述第一资源。
4.根据权利要求3所述的方法,其特征在于,所述第一客户端占用所述第一资源,包括:
所述第一客户端向所述服务端发送状态更新消息,所述状态更新消息用于请求将所述第一客户端对所述第一资源的标识状态更新为提交状态。
5.根据权利要求3所述的方法,其特征在于,所述第一客户端放弃所述第一资源,包括:
所述第一客户端向所述服务端发送状态更新消息,所述状态更新消息用于请求将所述第一客户端对所述第一资源的标识状态更新为放弃状态。
6.一种资源抢占的方法,其特征在于,包括:
服务端接收来自第一客户端的标识消息,所述标识消息用于标识第一资源,所述标识消息携带第一标识信息,所述第一标识信息包括第一客户端标识、所述第一客户端对所述第一资源的标识时间以及标识状态;
响应于所述第一客户端的查询操作,所述服务端向所述第一客户端发送所述第一资源的争抢组信息,所述争抢组信息包括各客户端对所述第一资源的标识信息;
所述服务端接收来自所述第一客户端的状态更新消息,若所述争抢组信息中不存在其他标识信息的优先级高于所述第一标识信息的优先级,则所述状态更新消息用于请求将所述第一客户端对所述第一资源的标识状态更新为提交状态;若所述争抢组中存在其他标识信息的优先级高于所述第一标识的优先级,则所述状态更新消息用于请求将所述第一客户端对所述第一资源的标识状态更新为放弃状态;
所述服务端根据所述状态更新消息更新所述第一客户端对所述第一资源的标识状态。
7.根据权利要求6所述的方法,其特征在于,所述争抢组信息中不存在其他标识信息的优先级高于所述第一标识信息的优先级,包括:
所述争抢组信息中,除所述第一客户端之外的其他客户端对所述第一资源的标识状态均为放弃状态;或者,
所述争抢组信息中,各客户端对所述第一资源的标识状态均为初始状态,且不存在其他客户端对所述第一资源的标识时间早于所述第一客户端对所述第一资源的标识时间;或者,
所述争抢组信息中,各客户端对所述第一资源的标识状态均为初始状态,存在第二客户端对所述第一资源的标识时间与所述第一客户端对所述第一资源的标识时间相同,且所述第一客户端标识小于第二客户端标识,其中,所述第一客户端和所述第二客户端对所述第一资源的标识时间早于所述争抢组信息中的其他客户端对所述第一资源的标识时间。
8.根据权利要求7所述的方法,其特征在于,在所述服务端接收来自第一客户端的标识消息之前,所述方法还包括:
所述服务端接收来自所述第一客户端的资源查询请求,所述资源查询请求用于查询所述服务端的可用资源;
所述服务端向所述第一客户端发送可用资源信息,所述可用资源信息包括所述第一资源。
9.一种资源抢占的装置,其特征在于,所述装置应用于第一客户端,所述装置包括:
通信单元,用于向服务端发送标识消息,所述标识消息用于标识第一资源,所述标识消息携带第一标识信息;还用于向所述服务端查询第一资源的争抢组信息,所述争抢组信息包括各客户端对所述第一资源的标识信息,所述第一标识信息包括第一客户端标识、处理单元对所述第一资源的标识时间以及标识状态;
所述处理单元,用于若确定所述通信单元获取的所述争抢组信息中不存在其他标识信息的优先级高于所述第一标识信息的优先级,则占用所述第一资源;若确定所述争抢组信息中存在其他标识信息的优先级高于所述第一标识信息的优先级,则放弃所述第一资源。
10.根据权利要求9所述的装置,其特征在于,所述争抢组信息中不存在其他标识信息的优先级高于所述第一标识信息的优先级,包括:
所述争抢组信息中,除所述第一客户端之外的其他客户端对所述第一资源的标识状态均为放弃状态;或者,
所述争抢组信息中,各客户端对所述第一资源的标识状态均为初始状态,且不存在其他客户端对所述第一资源的标识时间早于所述第一客户端对所述第一资源的标识时间;或者,
所述争抢组信息中,各客户端对所述第一资源的标识状态均为初始状态,存在第二客户端对所述第一资源的标识时间与所述第一客户端对所述第一资源的标识时间相同,且所述第一客户端标识小于所述第二客户端标识,其中,所述第一客户端和所述第二客户端对所述第一资源的标识时间早于所述争抢组信息中的其他客户端对所述第一资源的标识时间。
11.根据权利要求9或10所述的装置,其特征在于,
所述通信单元,还用于向所述服务端发送资源查询请求,所述资源查询请求用于查询所述服务端的可用资源;接收来自所述服务端的可用资源信息,所述可用资源包括所述第一资源。
12.根据权利要求11所述的装置,其特征在于,
所述通信单元,还用于向所述服务端发送状态更新消息,所述状态更新消息用于请求将所述第一客户端对所述第一资源的标识状态更新为提交状态。
13.根据权利要求11所述的装置,其特征在于,
所述通信单元,还用于向所述服务端发送状态更新消息,所述状态更新消息用于请求将所述第一客户端对所述第一资源的标识状态更新为放弃状态。
14.一种资源抢占的装置,其特征在于,包括:
通信单元,用于接收来自第一客户端的标识消息,所述标识消息用于标识第一资源,所述标识消息携带第一标识信息,所述第一标识信息包括第一客户端标识、所述第一客户端对所述第一资源的标识时间以及标识状态;
所述通信单元,还用于响应于所述第一客户端的查询操作,向所述第一客户端发送所述第一资源的争抢组信息,所述争抢组信息包括各客户端对所述第一资源的标识信息;
所述通信单元,还用于接收来自所述第一客户端的状态更新消息,若所述争抢组信息中不存在其他标识信息的优先级高于所述第一标识信息的优先级,则所述状态更新消息用于请求将所述第一客户端对所述第一资源的标识状态更新为提交状态;若所述争抢组中存在其他标识信息的优先级高于所述第一标识的优先级,则所述状态更新消息用于请求将所述第一客户端对所述第一资源的标识状态更新为放弃状态;
处理单元,用于根据所述状态更新消息更新所述第一客户端对所述第一资源的标识状态。
15.根据权利要求14所述的装置,其特征在于,所述争抢组信息中不存在其他标识信息的优先级高于所述第一标识信息的优先级,包括:
所述争抢组信息中,除所述第一客户端之外的其他客户端对所述第一资源的标识状态均为放弃状态;或者,
所述争抢组信息中,各客户端对所述第一资源的标识状态均为初始状态,且不存在其他客户端对所述第一资源的标识时间早于所述第一客户端对所述第一资源的标识时间;或者,
所述争抢组信息中,各客户端对所述第一资源的标识状态均为初始状态,存在第二客户端对所述第一资源的标识时间与所述第一客户端对所述第一资源的标识时间相同,且所述第一客户端标识小于所述第二客户端标识,其中,所述第一客户端和所述第二客户端对所述第一资源的标识时间早于所述争抢组信息中的其他客户端对所述第一资源的标识时间。
16.根据权利要求15所述的装置,其特征在于,
所述通信单元,还用于接收来自所述第一客户端的资源查询请求,所述资源查询请求用于查询服务端的可用资源;向所述第一客户端发送可用资源信息,所述可用资源信息包括所述第一资源。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810277186.3A CN110324262B (zh) | 2018-03-30 | 2018-03-30 | 一种资源抢占的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810277186.3A CN110324262B (zh) | 2018-03-30 | 2018-03-30 | 一种资源抢占的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110324262A CN110324262A (zh) | 2019-10-11 |
CN110324262B true CN110324262B (zh) | 2021-12-28 |
Family
ID=68111830
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810277186.3A Active CN110324262B (zh) | 2018-03-30 | 2018-03-30 | 一种资源抢占的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110324262B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111831390B (zh) * | 2020-01-08 | 2024-04-16 | 北京嘀嘀无限科技发展有限公司 | 服务器的资源管理方法、装置及服务器 |
CN111858063A (zh) * | 2020-07-28 | 2020-10-30 | 科大讯飞股份有限公司 | 一种资源竞争处理方法、装置、设备及存储介质 |
CN113535339B (zh) * | 2021-07-19 | 2022-06-17 | 赞同科技股份有限公司 | 一种调用服务的方法以及装置 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101304340B (zh) * | 2007-05-09 | 2011-09-21 | 华为技术有限公司 | 一种资源状态监控方法及装置以及通信网络 |
CN101378327A (zh) * | 2007-08-29 | 2009-03-04 | 中国移动通信集团公司 | 通信网络系统和通信网络业务处理方法 |
US9548941B2 (en) * | 2014-06-18 | 2017-01-17 | Adobe Systems Incorporated | Data flow node provisioning |
CN104917813A (zh) * | 2015-04-17 | 2015-09-16 | 小米科技有限责任公司 | 请求资源的方法及装置 |
-
2018
- 2018-03-30 CN CN201810277186.3A patent/CN110324262B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN110324262A (zh) | 2019-10-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110324262B (zh) | 一种资源抢占的方法及装置 | |
JP7326443B2 (ja) | Nf間のダイレクトシグナリングを使用したnfサービスコンシューマー再起動検出 | |
US7228351B2 (en) | Method and apparatus for managing resource contention in a multisystem cluster | |
CN111526186A (zh) | 基于Raft的分布式服务器集群配置方法 | |
JPH04232545A (ja) | 分散型コンピュータ・データベースの打ち込み時刻を一致させるシステムおよび方法 | |
CN108989391B (zh) | 一种一致性处理的方法及系统 | |
EP3319270A1 (en) | Service registration method, usage method and relevant apparatus | |
WO2019024679A1 (zh) | 网络功能的升级方法及升级管理实体 | |
CN111427670A (zh) | 任务调度方法和系统 | |
US20040139142A1 (en) | Method and apparatus for managing resource contention | |
CN110971702A (zh) | 服务调用方法、装置、计算机设备及存储介质 | |
EP4050850A1 (en) | Service upgrading method, device and system | |
CN106331081B (zh) | 一种信息同步方法及装置 | |
Hao et al. | {EdgeCons}: Achieving Efficient Consensus in Edge Computing Networks | |
CN110532069B (zh) | 一种分布式事务提交方法及装置 | |
CN112000285A (zh) | 强一致存储系统、数据强一致存储方法、服务器及介质 | |
CN111143041B (zh) | 一种数据一致性方法、分布式协调器及中央协调器 | |
CN117193974A (zh) | 基于多进程/线程的配置请求处理方法及装置 | |
CN113452770A (zh) | 数据同步方法、装置、计算机设备及存储介质 | |
CN112752352B (zh) | 一种中间会话管理功能i-smf确定方法和设备 | |
EP4447456A1 (en) | Live streaming room-based resource object allocation method and apparatus, device and storage medium | |
CN113839888B (zh) | 一种限流方法、装置、设备及可读存储介质 | |
CN116319241A (zh) | 处理事务的方法、处理事务的装置和电子设备 | |
CN113612732B (zh) | 一种资源调用方法、装置和多方安全计算系统 | |
CN107317880B (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 |