对请求进行加解锁方法、装置及系统制造方法及图纸

技术编号:13114753 阅读:40 留言:0更新日期:2016-04-06 07:10
本发明专利技术公开了一种对请求进行加解锁的方法、装置及系统,涉及互联网技术领域,为解决现有数据库锁机制效率低下的问题而发明专利技术。本发明专利技术的方法包括:接收客户端发送的服务请求,服务请求用于请求访问目标服务器;判断服务请求对应的资源是否被占用,资源是在目标服务器中的资源;若资源没有被占用,则向客户端发送访问指令,访问指令用于指示客户端访问目标服务器;若资源被占用,则不响应服务请求,以使客户端处于等待状态。本发明专利技术应用于对数据库中同一资源实现有序访问的过程中。

【技术实现步骤摘要】

本专利技术涉及互联网
,尤其涉及一种对请求进行加解锁方法、装置及系统
技术介绍
为了保证数据的一致和完整性,对于任何的数据库都会设计数据库锁机制来使各种共享的资源在并发访问时可以有序的进行。拿数据库MySQL来说,MySQL自身也带有锁机制。具体的锁机制的实现过程是:在客户端访问MySQL中的某条数据时,首先需要与MySQL建立传输控制协议(TransmissionControlProtocol,简称TCP)连接,然后由MySQL进行自检,即查询该条数据是否处于锁状态;若该条数据没有被锁,则客户端可以继续访问该条数据,若该条数据被锁,则客户端进入等待状态,直到访问的数据被解锁后客户端才可以继续访问。在上述MySQL进行自检时,由于MySQL中的锁机制是进行行级锁定或页级锁定或表级锁定的,所以首先需要查询该条数据属于哪个表或者哪页或者哪行的数据,然后再判断该数据所在的行或页或表是否被锁。实际应用中,数据库中的数据量十分庞大,上述数据库的锁机制会造成数据库自检时资源消耗很大,因此效率低下。
技术实现思路
鉴于上述问题,提出了本专利技术以便提供一种克服上述问题或者至少部分地解决上述问题的对请求进行加解锁方法、装置及系统。为解决上述技术问题,一方面,本专利技术提供了一种对请求进行加解锁方法,方法应用于管理服务器侧,包括:接收客户端发送的服务请求,所述服务请求用于请求访问目标服务器;r>判断所述服务请求对应的资源是否被占用,所述资源是在目标服务器中的资源;若所述资源没有被占用,则向所述客户端发送访问指令,所述访问指令用于指示所述客户端访问所述目标服务器;若所述资源被占用,则不响应所述服务请求,以使所述客户端处于等待状态。第二方面,本专利技术还提供了一种对请求进行加解锁方法,方法应用于客户端侧,包括:向管理服务器发送服务请求,所述服务请求用于请求访问目标服务器;等待所述管理服务器发送的访问指令,所述访问指令用于指示所述客户端访问所述目标服务器;若接收到所述访问指令,则访问所述目标服务器;若接收不到所述访问指令,则继续等待。第三方面,本专利技术还提供了一种对请求进行加解锁的装置,所述装置位于管理服务器侧,包括:请求接收单元,用于接收客户端发送的服务请求,所述服务请求用于请求访问目标服务器;判断单元,用于判断所述服务请求对应的资源是否被占用,所述资源是在目标服务器中的资源;访问指令发送单元,用于若所述资源没有被占用,则向所述客户端发送访问指令,所述访问指令用于指示所述客户端访问所述目标服务器;等待单元,用于若所述资源被占用,则不响应所述服务请求,以使所述客户端处于等待状态。第四方面,本专利技术还提供了一种对请求进行加解锁的装置,所述装置位于客户端侧,包括:请求发送单元,用于向管理服务器发送服务请求,所述服务请求用于请求访问目标服务器;第一等待单元,用于等待所述管理服务器发送的访问指令,所述访问指令用于指示所述客户端访问所述目标服务器;访问单元,用于若接收到所述访问指令,则访问所述目标服务器;第二等待单元,用于若接收不到所述访问指令,则继续等待。第五方面,本专利技术还提供了一种对请求进行加解锁的系统,该系统包括:管理服务器和客户端;所述管理服务器,用于接收所述客户端发送的服务请求,所述服务请求用于请求访问目标服务器;并判断所述服务请求对应的资源是否被占用,所述资源是在目标服务器中的资源;若所述资源没有被占用,则向所述客户端发送访问指令,所述访问指令用于指示所述客户端访问所述目标服务器;若所述资源被占用,则不响应所述服务请求,以使所述客户端处于等待状态;所述客户端,用于向所述管理服务器发送所述服务请求;等待所述管理服务器发送的访问指令;若接收到所述访问指令,则访问所述目标服务器;若接收不到所述访问指令,则继续等待。借由上述技术方案,本专利技术提供的对请求进行加解锁的方法、装置及系统,能够通过管理服务器接受客户端用于访问目标服务器的服务请求,然后由管理服务器先判断该服务请求对应的在目标服务器中的资源是否被占用,若资源被占用,就不向客户端发送访问目标服务器的访问指令,客户端处于等待状态,若资源未被占用则项客户端发送访问指令,使客户端可以访问目标服务器。与现有技术相比,本专利技术使目标服务器中的同一个资源每次只允许有一个客户端进行访问,在该资源在被占用的情况下,其他的客户端就需要等待,即实现了资源的加解锁管理。另外加解锁的管理是通过独立的管理服务器实现的,减轻了在目标服务器中实现加解锁造成的资源消耗,因此提高了加解锁的效率。上述说明仅是本专利技术技术方案的概述,为了能够更清楚了解本专利技术的技术手段,而可依照说明书的内容予以实施,并且为了让本专利技术的上述和其它目的、特征和优点能够更明显易懂,以下特举本专利技术的具体实施方式。附图说明通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本专利技术的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:图1示出了本专利技术实施例提供的一种对请求进行加解锁的方法流程图;图2示出了本专利技术实施例提供的另一种对请求进行加解锁的方法流程图;图3示出了本专利技术实施例提供的又一种对请求进行加解锁的方法流程图;图4示出了本专利技术实施例提供的再一种对请求进行加解锁的方法流程图;图5示出了本专利技术实施例提供的一种对请求进行加解锁的装置的组成框图;图6示出了本专利技术实施例提供的另一种对请求进行加解锁的装置的组成框图;图7示出了本专利技术实施例提供的又一种对请求进行加解锁的装置的组成框图;图8示出了本专利技术实施例提供的再一种对请求进行加解锁的装置的组成框图;图9示出了本专利技术实施例提供的一种对请求进行加解锁的系统框图。具体实施方式下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。为解决现有数据库锁机制效率低下的问题,本专利技术实施例提供了一种对请求进行加解锁的方法,如图1所示,该方法应用于管理服务器侧,该方本文档来自技高网...

【技术保护点】
一种对请求进行加解锁的方法,所述方法应用于管理服务器侧,其特征在于,所述方法包括:接收客户端发送的服务请求,所述服务请求用于请求访问目标服务器;判断所述服务请求对应的资源是否被占用,所述资源是在目标服务器中的资源;若所述资源没有被占用,则向所述客户端发送访问指令,所述访问指令用于指示所述客户端访问所述目标服务器;若所述资源被占用,则不响应所述服务请求,以使所述客户端处于等待状态。

【技术特征摘要】
1.一种对请求进行加解锁的方法,所述方法应用于管理服务器侧,其
特征在于,所述方法包括:
接收客户端发送的服务请求,所述服务请求用于请求访问目标服务器;
判断所述服务请求对应的资源是否被占用,所述资源是在目标服务器
中的资源;
若所述资源没有被占用,则向所述客户端发送访问指令,所述访问指
令用于指示所述客户端访问所述目标服务器;
若所述资源被占用,则不响应所述服务请求,以使所述客户端处于等
待状态。
2.根据权利要求1所述的方法,其特征在于,所述服务请求中携带有
所述客户端上报的连接号,所述连接号为所述客户端与所述管理服务器建
立的通讯连接的唯一标识。
3.根据权利要求2所述的方法,其特征在于,在所述接收客户端发送
的服务请求之后,所述方法进一步包括:
将接收到的所述连接号插入到队列中,所述队列用于对不同客户端的
服务请求进行排序。
4.根据权利要求3所述的方法,其特征在于,所述将接收到的所述连
接号插入到队列中,包括:
按照先进先出的原则插入到所述队列中;或者
随机插入到所述队列中;或者
按照客户端的优先级规则插入到所述队列中。
5.根据权利要求4所述的方法,其特征在于,所述向所述客户端发送
访问指令,包括:
向所述队列中队首的连接号对应的客户端发送访问指令;
所述不响应所述服务请求,包括:
不响应所述队列中其他连接号对应的客户端发送的服务请求。
6.根据权利要求5所述的方法,其特征在于,在向所述客户端发送访
问指令之后,所述方法进一步包括:
当所述客户端完成访问后,接收所述客户端发送的访问结束指令;
将所述客户端对应的连接号从队首删除;
将所述资源的状态该改为未被占用,以便于所述资源被所述队列中下
一个连接号对应的客户端访问。
7.一种对请求进行加解锁的方法,所述方法应用于客户端侧,其特征
在于,所述方法包括:
向管理服务器发送服务请求,所述服务请求用于请求访问目标服务器;
等待...

【专利技术属性】
技术研发人员:栾涛
申请(专利权)人:北京奇虎科技有限公司奇智软件北京有限公司
类型:发明
国别省市:北京;11

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

1