The embodiment of the invention discloses a management method for disk lock, device and system. The method includes: a first node sends a request to access a data storage system, request for requesting access to the disk lock; the first node receives a release request release request used to request the first node release disk lock release; the first node sends a message to the data storage system for releasing disk lock release message. The first node in the completion of the visit after the operation, and will not immediately release the disk lock, but continue to hold the disk lock, when there are second nodes need to access the disk lock, the lock disk occupies the first node receives a release request, and according to the release request to release the lock disk, for second nodes, thus avoiding the frequent disk lock request and release operations, reduced due to the application and release the lock on the disk IO disk occupancy, improve the overall performance of the system.
【技术实现步骤摘要】
一种磁盘锁的管理方法、装置和系统
本专利技术实施例涉及计算机领域,尤其涉及一种资源访问的方法、装置和系统。
技术介绍
在分布式系统中,分布式锁是不可或缺。而分布式锁有很多种实现方法。磁盘锁是分布式锁的一种实现形式,拥有磁盘锁的节点用于访问磁盘锁对应资源的权限,节点通过光纤存储区域网络(FiberChannelStorageAreaNetwork,FCSAN)或互联网协议存储区域网络(InternetProtocolStorageAreaNetwork,IPSAN)以小型计算机系统接口(Smallcomputersysteminterface,SCSI)命令的形式将加锁、解锁的消息写入磁盘,或者通过FC-SAN或IP-SAN以SCSI命令的形式从磁盘读出锁的状态,从而决定是否加锁或解锁。磁盘锁存储于磁盘上的,每次要刷新锁的信息就是不断地读磁盘,然后将新的锁信息写到磁盘,对磁盘锁的频繁刷新会锁消耗大量的磁盘输入输出(InputOutput,IO)。在一个中等规模的分布式系统中,如果所有节点都这样不断地从磁盘读锁信息,然后将锁信息写到磁盘,那么大量地IO将被磁盘锁占用,系统的性能将会受到很大的影响。
技术实现思路
有鉴于此,本专利技术实施例公开了一种磁盘锁的管理方法、装置和系统。以根据实际的需求,来对磁盘锁进行操作,减少了对磁盘锁的频繁更新,提升了分布式系统的性能。第一方面,本申请提供了一种磁盘锁的管理方法,资源和资源的磁盘锁保存在数据存储系统中,占有磁盘锁的节点拥有访问资源的权限,该方法包括:第一节点向数据存储系统发送获取请求,获取请求用于请求获取磁盘锁;第一节点 ...
【技术保护点】
一种磁盘锁的管理方法,其特征在于,资源和所述资源的磁盘锁保存在数据存储系统中,占有所述磁盘锁的节点拥有访问所述资源的权限,所述方法包括:第一节点向所述数据存储系统发送获取请求,所述获取请求用于请求获取所述磁盘锁;所述第一节点接收释放请求,所述释放请求用于请求所述第一节点释放所述磁盘锁;所述第一节点向所述数据存储系统发送释放消息,所述释放消息用于释放所述磁盘锁。
【技术特征摘要】
1.一种磁盘锁的管理方法,其特征在于,资源和所述资源的磁盘锁保存在数据存储系统中,占有所述磁盘锁的节点拥有访问所述资源的权限,所述方法包括:第一节点向所述数据存储系统发送获取请求,所述获取请求用于请求获取所述磁盘锁;所述第一节点接收释放请求,所述释放请求用于请求所述第一节点释放所述磁盘锁;所述第一节点向所述数据存储系统发送释放消息,所述释放消息用于释放所述磁盘锁。2.根据权利要求1所述的方法,其特征在于,所述第一节点接收释放请求包括:所述第一节点接收来自第二节点的释放请求,所述第二节点为待请求获取所述磁盘锁的节点。3.根据权利要求2所述的方法,其特征在于,所述第一节点向所述数据存储系统发送释放消息之后,所述方法还包括:所述第一节点向所述第二节点发送确认消息,所述确认消息用于指示所述第一节点已经释放所述磁盘锁。4.根据权利要求1所述的方法,其特征在于,所述第一节点接收释放请求包括:所述第一节点接收来自所述数据存储系统的释放请求。5.根据权利要求1-4任一项所述的方法,其特征在于,所述第一节点向所述数据存储系统发送释放消息之前,所述方法还包括:所述第一节点确定所述第一节点占用所述磁盘锁的时间超过预设的阈值。6.根据权利要求1-5任一项所述的方法,其特征在于,所述磁盘锁包含占有字段,所述占有字段用于记录占有所述磁盘锁的节点,所述获取请求中携带所述第一节点的标识,所述获取请求用于将所述第一节点的标识写入所述磁盘锁的占有字段。7.一种磁盘锁的管理方法,其特征在于,资源和所述资源的磁盘锁保存在数据存储系统中,所述磁盘锁包含占有字段,所述占有字段用于记录占有所述磁盘锁的节点,占有所述磁盘锁的节点拥有访问所述资源的权限,所述方法包括:第二节点读取所述磁盘锁;所述第二节点根据读取的所述磁盘锁的占有字段,确定所述磁盘锁被第一节点占用;所述第二节点向所述第一节点发送释放请求,所述释放请求用于请求所述第一节点释放所述磁盘锁。8.根据权利要求7所述的方法,其特征在于,所述第二节点向所述第一节点发送释放请求之后,还包括:所述第二节点接收所述第一节点发送的确认消息,所述确认消息用于指示所述第一节点已经释放所述磁盘锁。9.根据权利要求7或8所述的方法,其特征在于,所所述第二节点向所述第一节点发送释放请求之后,所述方法还包括:所述第二节点向所述数据存储系统发送获取请求,所述磁获取请求用于请求获取所述磁盘锁。10.一种磁盘锁的管理装置,其特征在于,资源和所述资源的磁盘锁保存在数据存储系统中,占有所述磁盘锁的节点拥有访问所述资源的权限,所述装置包括:发送单元,用于向所述数据存储系统发送获取请求,所述获取请求用于请求获取所述磁盘锁;接收单元,用于接收释放请求,所述释放请求用于请求所述第一节点释放所述磁盘锁;所述发送单元还用于向所述数据存储系统发送释放消息,所述释放消息用于释放所述磁盘锁。11.根据权利要求10所述的装置,其特征在于,所述接收单元具体用于接收来自第二节点的释放请求,所述第二节点为待请求获取所述磁盘锁的节点。12.根据权利要求11所述的装置,其特征在于,所述发送单元向所述数据存储系统发送释放消息之后,还用于向所述第二节点发送确认消息,所述确认消息用于指示所述第一节点已经释放所述磁盘锁。13.根据权利要求10所述的装置,其特征在于,所述接收单元具体用于接收来自所述数据存储系统的释放请求。14.根据权利要求10-13任...
【专利技术属性】
技术研发人员:程菊生,薛玖飞,江毅文,王义彬,
申请(专利权)人:华为技术有限公司,
类型:发明
国别省市:广东,44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。