[发明专利]用于减少服务器/数据库系统中锁定发生的方法和系统有效
| 申请号: | 201310524569.3 | 申请日: | 2013-10-30 |
| 公开(公告)号: | CN103793455A | 公开(公告)日: | 2014-05-14 |
| 发明(设计)人: | B.T.马莱基;P.戈塞克;J.马斯扎莱克;G.K.莱奇;J.沃尔齐切克 | 申请(专利权)人: | 国际商业机器公司 |
| 主分类号: | G06F17/30 | 分类号: | G06F17/30;H04L29/06 |
| 代理公司: | 北京市柳沈律师事务所 11105 | 代理人: | 周少杰 |
| 地址: | 美国纽*** | 国省代码: | 美国;US |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 用于 减少 服务器 数据库 系统 锁定 发生 方法 | ||
技术领域
本发明一般地涉及数据库系统的领域,特别涉及服务器访问数据库的数据库系统。更具体地,本发明涉及用于限制数据库系统中并发请求的数目并且因此减少服务器/数据库系统中锁定发生的方法和系统。
背景技术
在传统客户端-服务器架构中,一个或多个节点经由允许客户端和服务器之间的双向通信的网络连接到一个或多个服务器。典型地,服务器接收来自多个源的请求,并且根据规定的处理方案处理它们。更通常地,使用先进先出(FIFO)方法,允许首先接收的请求由服务器首先处理,第二接收的请求第二处理,以此类推。在数据库系统中,使用队列处理客户端的进入请求,以便组织请求的顺序排列。
基于发送到服务器的请求和请求客户端从服务器接收响应的时间之间的延迟,建立给定客户端-服务器架构中的服务质量。服务器上的负荷越高,接收响应的延迟更可能增加。在许多情况下,客户端具有内建机制,其使用“超时”设施,以避免对于要回答的请求等待长时间段。在这样的情况下,中止请求,并且即使结果从服务器指向请求客户端,请求客户端也忽视结果,或者不能接收它们,由于连接已经由客户端终止。在一些应用中,客户端生成另一请求,期待该请求将在分配的时间帧内被回答。该方案可能导致服务器队列的额外负荷,从而导致服务器的响应时间的额外延迟。
在大的数据库环境中,其中许多客户端连接到服务器发送要处理并推送到数据库的请求,数据库操作可能变为瓶颈,并且影响整体系统性能。当系统性能降低时,客户端不能连接到服务器。典型地,它们试图稍后获得连接,即,服务器连接的数目增加。这导致螺旋式下跌,因为服务器具有许多进入连接,使得由消耗资源的锁定处理降低数据库性能。不良的数据库性能导致请求处理延迟,其转而增加要处理的并发请求的数目。
此外,因为触发了超时,所以服务器上长时间等待的请求可能被视为失败,即使它最终被服务器处理。
因此,有利的是具有用于处理客户端-服务器环境中的过载情况的机制。更具体地,有利的是具有主动避免超时情况并且允许系统实现最大吞吐量的机制。
发明内容
本发明实施例的目的是提供改进的计算机实施的方法、计算机可读介质和计算机系统,用于限制数据库系统中并发请求的数目。通过独立权利要求的特征解决该目的。在从属权利要求中给出优选实施例。如果没有另外明确指示,本发明的实施例可以相互自由组合。
在一个方面中,本发明涉及一种用于限制数据库系统中并发请求的数目的计算机实施的方法,所述方法包括以下步骤:
-在至少一个队列中排列要由所述数据库系统处理的请求;
-限定对应于所述至少一个队列的并发请求的最大值;
-监视对应于所述至少一个队列的至少一个队列利用参数,并且基于所述至少一个队列利用参数计算性能值;
-基于所述性能值,动态调整所述至少一个队列的并发请求的最大值,以便改进系统性能,以及
-基于动态调整的最大值,动态限制所述至少一个队列的并发请求的数目。
例如,至少一个队列利用参数是请求的平均处理时间、服务的请求的数目、被拒绝请求的数目、在特定时间段中相对于请求的总数目的被拒绝请求的比率或者基于组合至少两个上述参数的计算的参数等。此外,可以从关于处理请求所需要时间的统计分布的信息(例如,最小处理时间、最大处理时间、处理时间的范围、处理时间的偏差、处理时间的变化等)得到至少一个队列利用参数。
所述特征可能是有利的,由于可能取决于数据库服务器的负荷,以其峰值性能运行数据库系统。如果仅仅存在临街负荷,即,性能因子低,那么动态地增加并发的排队请求的数目。相反地,如果系统性能劣化,那么减少并发的排队请求的数目,以便使得系统能够处理请求而没有请求的超时。
根据优选实施例,将请求分组在至少两个分组中,其中每个分组与专用队列和并发请求的队列特定最大值相关联。特别在具有大数目的进入的请求的环境中,由锁定处理消耗数据库性能。优选地,根据相互锁定的可能性在分组中排列请求。更可能相互锁定的请求将分配到相同分组。相反地,具有低的相互锁定的可能性的请求将分配到不同分组。例如,还可以根据触发请求的服务的服务ID,根据分析异常堆栈以识别干扰服务的学习机制等进行分组。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于国际商业机器公司,未经国际商业机器公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310524569.3/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种将AADL无损转换成XML的方法
- 下一篇:一种数据库读写分离方法及装置





