一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

业务处理方法及相关设备与流程

2022-11-19 07:08:11 来源:中国专利 TAG:
1.本技术涉及计算机
技术领域
:,特别涉及一种业务处理方法、装置、电子设备及计算机可读存储介质。
背景技术
::2.存储管理软件集成了存储资源管理、监测、报告、分层存储、性能管理、灾难恢复和业务连续性的所有必要操作,通常为b/s架构(browser/server,浏览器/服务器结构)。管理软件对外提供rest接口,当外部接口调用频率不高时,管理软件不会过多占用系统资源(如cpu、内存等);但是,如果服务器系统负载较高,此时外部并发调用rest接口频率也很高时,管理软件有较多线程在同时处理,占用cpu或内存较多,将会影响存储核心业务的正常运行。显然,相对于管理软件,存储核心业务的重要性更高,此时,则需要尽可能限制管理软件cpu、内存等的占用,以保障业务的稳定运行。3.因此,如何在系统负载压力较大时,对系统资源进行灵活调配,进而保证业务的正常运行是本领域技术人员亟待解决的问题。技术实现要素:4.本技术的目的是提供一种业务处理方法,该业务处理方法可以在系统负载压力较大时,对系统资源进行灵活调配,进而保证业务的正常运行;本技术的另一目的是提供一种业务处理装置、电子设备及计算机可读存储介质,均具有上述有益效果。5.第一方面,本技术提供了一种业务处理方法,包括:6.当接收到业务处理指令时,启动负载监视器;7.利用所述负载监视器采集获得当前资源利用率;8.若所述当前资源利用率超出预设阈值,则跳过设置有注解标识的业务线程,并执行未设置有所述注解标识的业务线程;9.若所述当前资源利用率未超出所述预设阈值,则执行所有业务线程。10.可选地,所述跳过设置有注解标识的业务线程,包括:11.当所述业务线程的注解标识为阻塞标识时,将所述业务线程挂起;12.当所述业务线程的注解标识为中断标识时,跳过所述业务线程并返回关于所述业务线程的无响应信息。13.可选地,所述业务处理方法还包括:14.当接收到关于设置有所述阻塞标识的业务线程的唤醒指令时,执行所述业务线程。15.可选地,所述业务处理方法还包括:16.统计被挂起的所述业务线程的挂起时长;17.当所述挂起时长达到预设时长时,响应所述唤醒指令。18.可选地,所述业务处理方法还包括:19.当所述当前资源利用率未超出所述预设阈值时,响应所述唤醒指令。20.可选地,所述利用所述负载监视器采集获得当前资源利用率,包括:21.利用所述负载监视器按照预设时间间隔采集获取所述当前资源利用率。22.可选地,所述当前资源利用率包括当前cpu利用率和当前内存利用率。23.第二方面,本技术还公开了一种业务处理装置,包括:24.启动模块,用于当接收到业务处理指令时,启动负载监视器;25.采集模块,用于利用所述负载监视器采集获得当前资源利用率;26.第一执行模块,用于若所述当前资源利用率超出预设阈值,则跳过设置有注解标识的业务线程,并执行未设置有所述注解标识的业务线程;27.第二执行模块,用于若所述当前资源利用率未超出所述预设阈值,则执行所有业务线程。28.第三方面,本技术还公开了一种电子设备,包括:29.存储器,用于存储计算机程序;30.处理器,用于执行所述计算机程序时实现如上所述的任一种业务处理方法的步骤。31.第四方面,本技术还公开了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的任一种业务处理方法的步骤。32.本技术所提供的一种业务处理方法,包括:当接收到业务处理指令时,启动负载监视器;利用所述负载监视器采集获得当前资源利用率;若所述当前资源利用率超出预设阈值,则跳过设置有注解标识的业务线程,并执行未设置有所述注解标识的业务线程;若所述当前资源利用率未超出所述预设阈值,则执行所有业务线程。33.应用本技术所提供的技术方案,预先对系统内重要程度较低的业务设置注解标识,并对业务请求处理机制进行优化,在执行业务时通过判断系统内的当前资源利用率确定当前系统负载压力,如若当前资源利用率较高,则说明当前系统负载压力较大,此时,则可以跳过设置有注解标识的业务线程,仅执行未设置有注解标识的业务线程,也即优先处理重要程度较高的业务线程,暂缓处理或者不处理重要程度较低的业务线程,如若当前资源利用率较低,则说明当前系统负载压力较小,可以依次执行系统内的所有业务线程,而无需区分业务线程的重要程度,由此,实现了对于系统资源的灵活调配,可以有效保障业务的正常运行。此外,该种实现方式只需针对现有系统代码做出少量修改,侵入性较小,可移植性较高。34.本技术所提供的业务处理装置、电子设备及计算机可读存储介质,均具有上述有益效果,在此不再赘述。附图说明35.为了更清楚地说明现有技术和本技术实施例中的技术方案,下面将对现有技术和本技术实施例描述中需要使用的附图作简要的介绍。当然,下面有关本技术实施例的附图描述的仅仅是本技术中的一部分实施例,对于本领域普通技术人员来说,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图,所获得的其他附图也属于本技术的保护范围。36.图1为本技术所提供的一种业务处理方法的流程示意图;37.图2为本技术所提供的一种业务处理装置的结构示意图;38.图3为本技术所提供的一种电子设备的结构示意图。具体实施方式39.本技术的核心是提供一种业务处理方法,该业务处理方法可以在系统负载压力较大时,对系统资源进行灵活调配,进而保证业务的正常运行;本技术的另一核心是提供一种业务处理装置、电子设备及计算机可读存储介质,均具有上述有益效果。40.为了对本技术实施例中的技术方案进行更加清楚、完整地描述,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行介绍。显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。41.本技术实施例提供了一种业务处理方法。42.请参考图1,图1为本技术所提供的一种业务处理方法的流程示意图,该业务处理方法可以包括如下s101至s104。43.s101:当接收到业务处理指令时,启动负载监视器;44.本步骤旨在基于业务处理指令实现负载监视器的启动,该负载监视器用于实现系统内当前资源利用率的采集。45.具体而言,当接收到业务处理指令时,即可启动负载监视器,其中,业务处理指令是指启动系统内业务处理的指令,基于该业务处理指令即可启动系统内相应业务的执行,该业务处理指令可以由用户通过前端设备发起,也可以是由预先设定的触发条件(如定时条件等)自动响应,因此,对于其获取方式,本技术不做限定。46.此外,负载监视器是预先安装于系统内的,用于采集系统内资源利用率的监控设备,当接收到业务处理指令时,该负载监视器被同时启动。47.s102:利用负载监视器采集获得当前资源利用率;48.本步骤旨在实现系统内当前资源利用率的采集,在负载监视器启动之后,即可利用该负载监视器对系统内的当前资源利用率进行采集。其中,当前资源利用率中所指的资源,是指系统内用于实现业务处理的各类资源,其具体类型并不影响本技术方案的实施,本技术对此不做限定,例如,在一种可能的实现方式中,该当前资源利用率可以包括当前cpu利用率和当前内存利用率。49.需要说明的是,利用负载监视器采集获得系统内的当前资源利用率旨在确定当前系统负载压力,当当前资源利用率较高时,说明当前系统负载压力较大,需要进行系统资源调度;当当前资源利用率较低时,说明当前系统负载压力较小,无需进行系统资源调度。50.其中,判定当前资源利用率的高低可以通过对比预先设定的阈值(即下述预设阈值)实现,如若当前资源利用率超出预设阈值,则说明当前资源利用率较高,如若当前资源利用率未超出预设阈值,则说明当前资源利用率较低。51.如上所述,当前资源利用率可以包括当前cpu利用率和当前内存利用率,此时,预设阈值则可以包括对应于当前cpu利用率的阈值和对应于当前内存利用率的阈值。进一步,当两者中的任意一个超出自身对应的阈值时,即可确定当前资源利用率较高,当二者均未超出各自对应的阈值时,即可判定当前资源利用率较低。当然,当资源类型较多时,同样可以采用此处判定方式。52.可以理解的是,上述预设阈值的具体取值并不影响本技术方案的实施,并且,不同类型资源对应的阈值可相同也可不同,均可以由技术人员根据系统自身特性进行设定,本技术对此不做限定。53.s103:若当前资源利用率超出预设阈值,则跳过设置有注解标识的业务线程,并执行未设置有注解标识的业务线程;54.本步骤旨在实现系统负载压力较大情况下的业务处理。如上所述,当当前资源利用率超出预设阈值时,说明当前系统负载压力较大,需要进行系统资源调度,基于此,对于系统内需要进行处理的业务线程,可以先判断其中是否被预先设置有注解标识,如若设置有注解标识,说明该业务线程的重要程度相对较低,此时,可以直接跳过该业务线程不对其进行处理;反之,如若未设置有注解标识,说明该业务线程的重要程度相对较高,此时,则不再跳过该业务线程,直接对其进行处理即可。其中,对于跳过不做处理的业务线程,可以后续再根据实际情况确定是否继续进行处理。55.其中,对于系统内的各个业务线程,均可以根据其重要程度预先设置注解标识,即:对于重要程度较低的业务线程设置注解标识,对于重要程度较高的业务线程不设置注解标识。其中,业务线程的重要程度则由系统业务的实际情况所决定。56.一般的,在实际开发过程中,注解标识的设置可以遵循如下两个原则:57.(1)避免将注解标识设置在重要程度较高的业务线程中,请求跳过业务线程所造成的影响要可接受;58.(2)选择合适的业务线程设置注解标识,合适的判断标准是前后两个业务线程关联性较小,两个业务线程之间跳过时不会造成不好的结果,这些合适的位置被称为安全点(safepoint)。以业务线程a和业务线程b为例,业务线程a被执行后,如果业务线程b不执行会造成不好的后果(如资源未释放、内存泄漏等问题),那么,业务线程b上就不建议设置注解标识;反之,业务线程b可以被称为安全点,可以设置注解标识。59.s104:若当前资源利用率未超出预设阈值,则执行所有业务线程。60.本步骤旨在实现系统负载压力较小情况下的业务处理。如上所述,当当前资源利用率未超出预设阈值时,说明当前系统负载压力较小,无需进行系统资源调度,基于此,对于系统内需要进行处理的业务线程,则依次执行即可。61.可见,本技术实施例所提供的业务处理方法,预先对系统内重要程度较低的业务设置注解标识,并对业务请求处理机制进行优化,在执行业务时通过判断系统内的当前资源利用率确定当前系统负载压力,如若当前资源利用率较高,则说明当前系统负载压力较大,此时,则可以跳过设置有注解标识的业务线程,仅执行未设置有注解标识的业务线程,也即优先处理重要程度较高的业务线程,暂缓处理或者不处理重要程度较低的业务线程,如若当前资源利用率较低,则说明当前系统负载压力较小,可以依次执行系统内的所有业务线程,而无需区分业务线程的重要程度,由此,实现了对于系统资源的灵活调配,可以有效保障业务的正常运行。此外,该种实现方式只需针对现有系统代码做出少量修改,侵入性较小,可移植性较高。62.在本技术的一个实施例中,上述跳过设置有注解标识的业务线程,可以包括如下步骤:63.当业务线程的注解标识为阻塞标识时,将业务线程挂起;64.当业务线程的注解标识为中断标识时,跳过业务线程并返回关于业务线程的无响应信息。65.具体而言,对于重要程度较低的不同类型的业务线程,还可以根据实际需求设置不同类型的注解标识,如上述阻塞标识和中断标识,其中,阻塞标识是指可以对其对应的业务线程进行暂时挂起,不做处理,待到后续可以继续进行处理;中断标识则是指可以直接跳过其对应的业务线程,后续无需再对其进行处理。66.因此,当确定系统内的当前资源利用率超出预设阈值时,对于设置有注解标识的业务线程,可以先判断其标识类型,如若为阻塞标识,则可以暂停处理并直接将其挂起;如若为中断标识,则可以直接跳过,并返回关于该业务线程的无响应信息。其中,对于设置有中断标识的业务线程进行无响应信息的反馈,旨在通知前端该业务线程已被处,也就是说,对于前端而言,该业务线程是已经处理完毕的业务线程,而本质上是直接跳过不做处理的业务线程。67.其中,对于系统内重要程度相对较低需要设置注解标识的业务线程而言,具体设置何种类型的注解标识并不影响本技术方案的实施,由技术人员根据实际情况进行设定即可,本技术对此不做限定。68.在本技术的一个实施例中,该业务处理方法还可以包括如下步骤:69.当接收到关于设置有阻塞标识的业务线程的唤醒指令时,执行业务线程。70.本技术实施例所提供的业务处理方法,对于系统内被设置有阻塞标识的业务线程,可以执行唤醒操作,也即对于系统内被挂起的业务线程可以执行唤醒操作。具体而言,当接收到关于设置有阻塞标识的业务线程的唤醒指令时,即可根据该唤醒指令唤醒对应的业务线程,并执行该业务线程,从而实现被挂起的业务线程的处理。其中,唤醒指令的获取方式并不唯一,可以由用户通过前端直接发起,也可以根据预先设定的触发条件自动响应,本技术对此不做限定。71.在本技术的一个实施例中,该业务处理方法还可以包括如下步骤:72.统计被挂起的业务线程的挂起时长;73.当挂起时长达到预设时长时,响应唤醒指令。74.本技术实施例提供了一种获取唤醒指令的实现方法。具体而言,对于被挂起的业务线程,可以进一步设置可挂起时长,即上述预设时长,然后,在业务线程被挂起的过程中,可以对其挂起时长进行实时统计,如若该挂起时长达到预设时长,则可以自动响应唤醒指令,从而实现唤醒指令的获取,由此,即可根据该唤醒指令唤醒对应的业务线程并执行。其中,预设时长的具体取值并不影响本技术方案的实施,并且,不同的被挂起的业务线程也可以设置不同的预设时长,均可以由技术人员根据实际情况进行设置,本技术对此不做限定。75.在本技术的一个实施例中,该业务处理方法还可以包括如下步骤:76.当当前资源利用率未超出预设阈值时,响应唤醒指令。77.本技术实施例提供了另一种获取唤醒指令的实现方法。具体而言,可以利用负载监视器对系统内的当前资源利用率进行实时或者定时采集,一旦监测到当前资源利用率未超出预设阈值时,即可自动响应唤醒指令,从而实现唤醒指令的获取,由此,即可根据该唤醒指令唤醒对应的业务线程并执行。78.需要说明的是,上述两种唤醒指令的获取方法可以同时存在,以便于用户可以根据实际需求进行自定义选择。79.在本技术的一个实施例中,上述利用负载监视器采集获得当前资源利用率,可以包括如下步骤:80.利用负载监视器按照预设时间间隔采集获取当前资源利用率。81.本技术实施例提供了一种基于负载监视器采集当前资源利用率的实现方法,即可以是基于预设时间间隔的周期性采集。同样的,类似于上述预设阈值、预设时长,其具体取值并不影响本技术方案的实施,由技术人员根据实际情况进行设置即可,本技术对此不做限定。82.在上述各实施例的基础上,本技术实施例提供了另一种业务处理方法。83.首先,在系统内安装负载监视器,并根据实际需求对系统内的各个业务线程设置注解标识。其中,注解标识包括blockable(阻塞)标识和interruptable(中断)标识,blockable注解标识表示当系统资源紧张时该业务线程可被阻塞,且支持设置block_time(阻塞时长),业务线程被阻塞后,直到被唤醒或超时,才可以继续往下执行;interruptable注解标识表示当系统资源紧张时该业务线程可被中断执行。负载监视器则负责周期性监视cpu使用率和内存使用率,当cpu和内存负载较低时唤醒被阻塞的业务线程。84.进一步,业务处理方法的实现流程可以包括:85.(1)启动业务处理,启动负载监视器,通过负载监视器周期性采集系统内当前cpu使用率和当前内存使用率;86.(2)如若当前cpu使用率超出相应阈值或者当前内存使用率超出相应阈值,则执行(3),否则执行(7)87.(3)判断当前业务线程是否设置有注解标识,若是,则执行(4)或者(5),否则执行(6);88.(4)若注解标识为blockable标识,则阻塞当前业务线程,并设置阻塞时间,等待唤醒或超时;切换至下一业务线程,并返回(3);89.(5)若注解标识为interruptable标识,则跳过当前业务线程,并抛出异常,返回serverbusy响应;切换至下一业务线程,并返回(3);90.(6)执行当前业务线程;91.(7)依次执行系统内的各个业务线程。92.可见,本技术实施例所提供的业务处理方法,预先对系统内重要程度较低的业务设置注解标识,并对业务请求处理机制进行优化,在执行业务时通过判断系统内的当前资源利用率确定当前系统负载压力,如若当前资源利用率较高,则说明当前系统负载压力较大,此时,则可以跳过设置有注解标识的业务线程,仅执行未设置有注解标识的业务线程,也即优先处理重要程度较高的业务线程,暂缓处理或者不处理重要程度较低的业务线程,如若当前资源利用率较低,则说明当前系统负载压力较小,可以依次执行系统内的所有业务线程,而无需区分业务线程的重要程度,由此,实现了对于系统资源的灵活调配,可以有效保障业务的正常运行。此外,该种实现方式只需针对现有系统代码做出少量修改,侵入性较小,可移植性较高。93.本技术实施例提供了一种业务处理装置。94.请参考图2,图2为本技术所提供的一种业务处理装置的结构示意图,该业务处理装置可以包括:95.启动模块1,用于当接收到业务处理指令时,启动负载监视器;96.采集模块2,用于利用负载监视器采集获得当前资源利用率;97.第一执行模块3,用于若当前资源利用率超出预设阈值,则跳过设置有注解标识的业务线程,并执行未设置有注解标识的业务线程;98.第二执行模块4,用于若当前资源利用率未超出预设阈值,则执行所有业务线程。99.可见,本技术实施例所提供的业务处理装置,预先对系统内重要程度较低的业务设置注解标识,并对业务请求处理机制进行优化,在执行业务时通过判断系统内的当前资源利用率确定当前系统负载压力,如若当前资源利用率较高,则说明当前系统负载压力较大,此时,则可以跳过设置有注解标识的业务线程,仅执行未设置有注解标识的业务线程,也即优先处理重要程度较高的业务线程,暂缓处理或者不处理重要程度较低的业务线程,如若当前资源利用率较低,则说明当前系统负载压力较小,可以依次执行系统内的所有业务线程,而无需区分业务线程的重要程度,由此,实现了对于系统资源的灵活调配,可以有效保障业务的正常运行。此外,该种实现方式只需针对现有系统代码做出少量修改,侵入性较小,可移植性较高。100.在本技术的一个实施例中,上述第一执行模块3可以包括:101.挂起单元,用于当业务线程的注解标识为阻塞标识时,将业务线程挂起;102.反馈单元,用于当业务线程的注解标识为中断标识时,跳过业务线程并返回关于业务线程的无响应信息。103.在本技术的一个实施例中,该业务处理装置还可以包括唤醒模块,用于当接收到关于设置有阻塞标识的业务线程的唤醒指令时,执行业务线程。104.在本技术的一个实施例中,该业务处理装置还可以包括第一响应模块,用于统计被挂起的业务线程的挂起时长;当挂起时长达到预设时长时,响应唤醒指令。105.在本技术的一个实施例中,该业务处理装置还可以包括第二响应模块,用于当当前资源利用率未超出预设阈值时,响应唤醒指令。106.在本技术的一个实施例中,上述采集模块2可具体用于利用负载监视器按照预设时间间隔采集获取当前资源利用率。107.在本技术的一个实施例中,上述当前资源利用率可以包括当前cpu利用率和当前内存利用率。108.对于本技术实施例提供的装置的介绍请参照上述方法实施例,本技术在此不做赘述。109.本技术实施例提供了一种电子设备。110.请参考图3,图3为本技术所提供的一种电子设备的结构示意图,该电子设备可包括:111.存储器,用于存储计算机程序;112.处理器,用于执行计算机程序时可实现如上述任意一种业务处理方法的步骤。113.如图3所示,为电子设备的组成结构示意图,电子设备可以包括:处理器10、存储器11、通信接口12和通信总线13。处理器10、存储器11、通信接口12均通过通信总线13完成相互间的通信。114.在本技术实施例中,处理器10可以为中央处理器(centralprocessingunit,cpu)、特定应用集成电路、数字信号处理器、现场可编程门阵列或者其他可编程逻辑器件等。115.处理器10可以调用存储器11中存储的程序,具体的,处理器10可以执行业务处理方法的实施例中的操作。116.存储器11中用于存放一个或者一个以上程序,程序可以包括程序代码,程序代码包括计算机操作指令,在本技术实施例中,存储器11中至少存储有用于实现以下功能的程序:117.当接收到业务处理指令时,启动负载监视器;118.利用负载监视器采集获得当前资源利用率;119.若当前资源利用率超出预设阈值,则跳过设置有注解标识的业务线程,并执行未设置有注解标识的业务线程;120.若当前资源利用率未超出预设阈值,则执行所有业务线程。121.在一种可能的实现方式中,存储器11可包括存储程序区和存储数据区,其中,存储程序区可存储操作系统,以及至少一个功能所需的应用程序等;存储数据区可存储使用过程中所创建的数据。122.此外,存储器11可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件或其他易失性固态存储器件。123.通信接口12可以为通信模块的接口,用于与其他设备或者系统连接。124.当然,需要说明的是,图3所示的结构并不构成对本技术实施例中电子设备的限定,在实际应用中电子设备可以包括比图3所示的更多或更少的部件,或者组合某些部件。125.本技术实施例提供了一种计算机可读存储介质。126.本技术实施例所提供的计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时可实现如上述任意一种业务处理方法的步骤。127.该计算机可读存储介质可以包括:u盘、移动硬盘、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。128.对于本技术实施例提供的计算机可读存储介质的介绍请参照上述方法实施例,本技术在此不做赘述。129.说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。130.专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本技术的范围。131.结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(ram)、内存、只读存储器(rom)、电可编程rom、电可擦除可编程rom、寄存器、硬盘、可移动磁盘、cd-rom或
技术领域
:内所公知的任意其它形式的存储介质中。132.以上对本技术所提供的技术方案进行了详细介绍。本文中应用了具体个例对本技术的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本技术的方法及其核心思想。应当指出,对于本
技术领域
:的普通技术人员来说,在不脱离本技术原理的前提下,还可以对本技术进行若干改进和修饰,这些改进和修饰也落入本技术的保护范围内。当前第1页12当前第1页12
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献