[发明专利]一种对服务请求调度的方法和系统有效
申请号: | 201210517879.8 | 申请日: | 2012-12-05 |
公开(公告)号: | CN103019859B | 公开(公告)日: | 2018-02-16 |
发明(设计)人: | 贺晓峰 | 申请(专利权)人: | 北京普泽创智数据技术有限公司 |
主分类号: | G06F9/50 | 分类号: | G06F9/50 |
代理公司: | 北京品源专利代理有限公司11332 | 代理人: | 马晓亚 |
地址: | 100180 北京市*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 服务 请求 调度 方法 系统 | ||
技术领域
本发明涉及计算机领域,尤其涉及一种对不同优先级的服务请求进行优先级调度,实现其服务性能隔离的方法和一种对服务请求调度系统。
背景技术
当数据库上存在多个不同等级的数据表时,应用程序希望获取相应等级的服务性能。目前使不同等级数据表的服务性能的相互隔离的方法,会使系统性能受到损失。现有的数据库系统或分布式系统中,SLA(Service-Level Agreement,服务等级协议)分等级服务方式多基于进程优先级调度或连接优先级调度,这些实现方法具有以下的缺点:①基于系统外部排序方式对系统性能影响较大。②基于系统外部排序方式控制粒度较粗,无法做到表及方法级优先级管理。
对不同优先级的服务请求进行优先级调度,实现其服务性能隔离的问题还属于分布式系统或数据库领域正待解决的技术问题。
发明内容
本发明提出了一种对服务请求调度的方法和系统,实现了在不损失服务器整体性能的前提下,使不同等级数据表的服务性能相互隔离,所述技术方案如下:
一种系统对服务请求调度的方法,包括:
为系统中的数据表和所述数据表的相应操作设置优先级;
根据服务请求所调用的数据表的优先级和对数据表操作的优先级,得到相应服务请求的优先级;
系统中的服务器将服务请求按优先级的高低在所述服务器的内存中排成服务请求优先级队列,优先级高的服务请求排在所述队列前面;
服务线程按从前到后的顺序,调度执行服务请求优先级队列中的服务请求;
每隔一定时间,系统对服务请求优先级队列的排序进行刷新,在服务请求优先级队列中添加新的服务请求,并且,每刷新一次,将刷新前添加在队列中而未被执行的服务请求的优先级提高一级。
进一步的,将系统中所述数据表的优先级和所述数据表相应操作的优先级存储在所述数据表的描述符中,并允许对所述数据表的优先级和所述数据表相应操作的优先级动态修改。
进一步的,所述数据表的描述符是所述数据表的定义,存储在元数据表中。
进一步的,所述对数据表的操作包括写入、读取、删除和更新。
进一步的,所述服务请求的优先级等于所述服务请求所调用的数据表的优先级和所述数据表相应操作的优先级之和。
进一步的,系统中的服务器将服务请求按优先级的高低在所述服务器的内存中排成服务请求优先级队列,对于优先级相同的服务请求,按照添加服务请求的时间顺序排列,添加时间早的服务请求排在添加时间晚的服务请求的前面。
进一步的,所述系统中的服务器通过远程过程调用提取数据表信息和操作信息,获得最终服务请求优先级。
进一步的,系统中的服务器将所述元数据表缓存在缓存系统中,当调用服务请求时,直接从缓存系统的元数据中获取所述服务请求的优先级。
一种对服务请求调度的系统,包括:
数据存储模块,用于存储系统中的数据表;
控制模块,与数据存储模块相连接,用于接收服务请求,从所述数据存储系统调用所述服务请求所需的数据表,获得服务请求的优先级,将所述服务请求执行模块按照优先级排成服务请求优先级队列,定时对服务请求优先级队列的排序进行刷新;
服务请求执行模块,与控制模块相连接,按照所述服务请求优先级队列的排列顺序执行所述服务请求。
进一步的,所述数据存储模块还包括缓存模块,用于缓存元数据表。
本发明通过提出服务请求优先级的获取和对服务请求优先级队列中服务请求调度的技术,保证了不同等级的数据表的服务请求获取相应的预置服务性能,并且通过缓存服务请求优先级,使得系统性能几乎不损失。从而实现了在不损失服务器整体性能的前提下,使不同等级数据表的服务性能相互隔离。
附图说明
图1是本发明实施例一提供的系统对服务请求调度的方法流程图;
图2是本发明实施例二提供的服务器中服务请求优先级调度结构示意图;
图3是本发明实施例三提供的服务器中服务请求优先级调度结构示意图;
图4是本发明实施例四提供的服务器中服务请求优先级调度结构示意图;
图5是本发明实施例五提供的对服务请求调度的系统功能模块框图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例,仅仅用于解释本发明,而非对本发明的限定。
实施例一
图1是本发明实施例一提供的系统对服务请求调度方法流程图。该方法包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京普泽创智数据技术有限公司,未经北京普泽创智数据技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210517879.8/2.html,转载请声明来源钻瓜专利网。