技术新讯 > 电子通信装置的制造及其应用技术 > 一种动态处理SQL计算请求的方法及系统与流程  >  正文

一种动态处理SQL计算请求的方法及系统与流程

  • 国知局
  • 2024-08-02 14:52:00

本发明涉及通信,尤其涉及一种动态处理sql计算请求的方法及系统。

背景技术:

1、数据库服务进程是数据库系统负责执行sql计算请求的程序,当数据库服务器接收到客户端程序发出的sql计算请求时,会依据请求的sql语句执行,并将执行结果回复至客户端,完成sql计算请求服务,当sql计算请求过多时,数据库服务进程将异常忙碌,当所有运行中的服务进程都处于忙碌中时,将无法及时处理sql计算请求,面对此情况,现有的方法是使用队列方式按sql计算请求的时序先后处理,但当sql计算请求过多时,队列中排队等待的sql计算请求也会发生堆积,仍然无法及时回复请求,出现回复时延过长的问题,影响用户体验。

技术实现思路

1、本发明所要解决的技术问题是:本发明提供一种动态处理sql计算请求的方法及系统,缩短sql计算请求的回复时延,提高sql计算请求的处理效率,优化用户体验。

2、为了解决上述技术问题,本发明采用的技术方案为:

3、第一方面,本发明提供一种动态处理sql计算请求的方法,包括:

4、实时获取当前服务进程的进程总数量和当前请求队列中sql计算请求的请求总数量;

5、判断所述请求总数量是否达到所述进程总数量的预设倍数,若是,则计算当前请求队列中sql计算请求的等待时间,当所述等待时间超过第一阈值时,自动添加新的服务进程,并将所述等待时间超过第一阈值的sql计算请求分派至新的服务进程进行处理。

6、本发明的有益效果:以自动添加服务进程解决现有的服务进程异常忙碌无法及时处理sql计算请求的情况,缩短sql计算请求的回复时延,提高sql计算请求的处理效率,且将实时获取的当前请求队列中sql计算请求的请求总数量达到当前服务进程的进程总数量的预设倍数和sql计算请求的等待时间超过第一阈值作为自动添加新的服务进程的判断条件,提高自动添加新的服务进程的合理性与客观性,将等待时间超过第一阈值的sql计算请求分派到新的服务进程进行处理,提高sql计算请求的处理效率,缩短sql计算请求的等待时间,优化用户体验。

7、可选地,所述则计算当前请求队列中sql计算请求的等待时间,当所述等待时间超过第一阈值时,自动添加新的服务进程,并将所述等待时间超过第一阈值的sql计算请求分派至新的服务进程进行处理包括:

8、计算当前请求队列中位于首位的第一sql计算请求的等待时间,当所述等待时间超过第一阈值时,自动添加新的服务进程,并将所述第一sql计算请求分派至新的服务进程进行处理,当所述等待时间未超过第一阈值时,则按照先进先出原则将当前请求队列中sql计算请求依次分派至当前服务进程进行处理。

9、根据上述描述可知,只计算当前请求队列中位于首位的第一sql计算请求的等待时间,即计算当前请求队列中等待时间最久的sql计算请求,减少计算量提高计算效率的同时,保证添加新的服务进程的合理性,将等待时间超过第一阈值的第一sql计算请求分派至新的服务进程进行处理,即实现对当前请求队列中等待时间最久的第一sql计算请求的优先服务,优化用户体验,而等待时间未超过第一阈值,按照先进先出原则依次进行分派,保证分派的合理性。

10、可选地,还包括:

11、判断所述请求总数量是否低于所述进程总数量,若是,则获取每一个当前服务进程的当前状态,对所述当前状态为空闲状态的当前服务进程进行停止操作。

12、根据上述描述可知,当请求总数量低于进程总数量时,对当前状态为空闲状态的当前服务进程进行停止操作,即对当前服务进程进行自动缩减,节约系统资源,提高资源利用率。

13、可选地,所述预设倍数为2倍,所述第一阈值为1秒。

14、第二方面,本发明提供一种动态处理sql计算请求的系统,包括:

15、获取模块,用于实时获取当前服务进程的进程总数量和当前请求队列中sql计算请求的请求总数量;

16、服务进程添加模块,用于判断所述请求总数量是否达到所述进程总数量的预设倍数,若是,则计算当前请求队列中sql计算请求的等待时间,当所述等待时间超过第一阈值时,自动添加新的服务进程,并将所述等待时间超过第一阈值的sql计算请求分派至新的服务进程进行处理。

17、本发明的有益效果:以自动添加服务进程解决现有的服务进程异常忙碌无法及时处理sql计算请求的情况,缩短sql计算请求的回复时延,提高sql计算请求的处理效率,且将实时获取的当前请求队列中sql计算请求的请求总数量达到当前服务进程的进程总数量的预设倍数和sql计算请求的等待时间超过第一阈值作为自动添加新的服务进程的判断条件,提高自动添加新的服务进程的合理性与客观性,将等待时间超过第一阈值的sql计算请求分派到新的服务进程进行处理,提高sql计算请求的处理效率,缩短sql计算请求的等待时间,优化用户体验。

18、可选地,所述服务进程添加模块具体为:

19、计算当前请求队列中位于首位的第一sql计算请求的等待时间,当所述等待时间超过第一阈值时,自动添加新的服务进程,并将所述第一sql计算请求分派至新的服务进程进行处理,当所述等待时间未超过第一阈值时,则按照先进先出原则将当前请求队列中sql计算请求依次分派至当前服务进程进行处理。

20、根据上述描述可知,只计算当前请求队列中位于首位的第一sql计算请求的等待时间,即计算当前请求队列中等待时间最久的sql计算请求,减少计算量提高计算效率的同时,保证添加新的服务进程的合理性,将等待时间超过第一阈值的第一sql计算请求分派至新的服务进程进行处理,即实现对当前请求队列中等待时间最久的第一sql计算请求的优先服务,优化用户体验,而等待时间未超过第一阈值,按照先进先出原则依次进行分派,保证分派的合理性。

21、可选地,还包括:

22、服务进程停止模块,用于判断所述请求总数量是否低于所述进程总数量,若是,则获取每一个当前服务进程的当前状态,对所述当前状态为空闲状态的当前服务进程进行停止操作。

23、根据上述描述可知,当请求总数量低于进程总数量时,对当前状态为空闲状态的当前服务进程进行停止操作,即对当前服务进程进行自动缩减,节约系统资源,提高资源利用率。

24、可选地,所述预设倍数为2倍,所述第一阈值为1秒。

技术特征:

1.一种动态处理sql计算请求的方法,其特征在于,包括:

2.如权利要求1所述的一种动态处理sql计算请求的方法,其特征在于,所述则计算当前请求队列中sql计算请求的等待时间,当所述等待时间超过第一阈值时,自动添加新的服务进程,并将所述等待时间超过第一阈值的sql计算请求分派至新的服务进程进行处理包括:

3.如权利要求1所述的一种动态处理sql计算请求的方法,其特征在于,还包括:

4.如权利要求1所述的一种动态处理sql计算请求的方法,其特征在于,所述预设倍数为2倍,所述第一阈值为1秒。

5.一种动态处理sql计算请求的系统,其特征在于,包括:

6.如权利要求5所述的一种动态处理sql计算请求的系统,其特征在于,所述服务进程添加模块具体为:

7.如权利要求5所述的一种动态处理sql计算请求的系统,其特征在于,还包括:

8.如权利要求5所述的一种动态处理sql计算请求的系统,其特征在于,所述预设倍数为2倍,所述第一阈值为1秒。

技术总结本发明涉及一种动态处理SQL计算请求的方法及系统,其中,该方法将实时获取当前服务进程的进程总数量和当前请求队列中SQL计算请求的请求总数量进行比较,当请求总数量达到进程总数量的预设倍数且当前请求队列中SQL计算请求的等待时间超过第一阈值时,自动添加新的服务进程,并将等待时间超过第一阈值的SQL计算请求分派至新的服务进程进行处理。由此,本发明以自动添加服务进程解决现有的服务进程异常忙碌无法及时处理SQL计算请求的情况,将等待时间超过第一阈值的SQL计算请求分派到新的服务进程进行处理,提高SQL计算请求的处理效率,缩短SQL计算请求的等待时间,优化用户体验。技术研发人员:陈智渊,林雅受保护的技术使用者:福建星瑞格软件有限公司技术研发日:技术公布日:2024/7/29

本文地址:https://www.jishuxx.com/zhuanli/20240801/244094.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。