CN112506628B - 代理程序的管理方法、装置、计算机设备及存储介质 - Google Patents

代理程序的管理方法、装置、计算机设备及存储介质 Download PDF

Info

Publication number
CN112506628B
CN112506628B CN202011330507.5A CN202011330507A CN112506628B CN 112506628 B CN112506628 B CN 112506628B CN 202011330507 A CN202011330507 A CN 202011330507A CN 112506628 B CN112506628 B CN 112506628B
Authority
CN
China
Prior art keywords
agent
identifier
software development
development kit
managed
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202011330507.5A
Other languages
English (en)
Other versions
CN112506628A (zh
Inventor
王鹏
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Dajia Internet Information Technology Co Ltd
Original Assignee
Beijing Dajia Internet Information Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Dajia Internet Information Technology Co Ltd filed Critical Beijing Dajia Internet Information Technology Co Ltd
Priority to CN202011330507.5A priority Critical patent/CN112506628B/zh
Publication of CN112506628A publication Critical patent/CN112506628A/zh
Application granted granted Critical
Publication of CN112506628B publication Critical patent/CN112506628B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/48Indexing scheme relating to G06F9/48
    • G06F2209/482Application

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本公开关于一种代理程序的管理方法、装置、计算机设备及存储介质,属于计算机技术领域。其中,该方法包括:获取待管理代理程序的第一标识;从关联关系中确定与第一标识匹配的第二标识,第二标识为已注册的代理程序的标识,并确定与第二标识关联的软件开发工具包的标识;确定业务进程对软件开发工具包的标识所属的软件开发工具包的调用参数值,调用参数值用于描述业务进程对软件开发工具包的调用情况;如果调用参数值大于设定阈值,则停止待管理代理程序相关联的进程。通过这种方法,能够及时地对代理程序Agent相关联的进程进行停止控制,及时地释放进程所占用的硬件资源消耗,从而实现对代理程序Agent进行高效管理,提升对代理程序Agent的管理效果。

Description

代理程序的管理方法、装置、计算机设备及存储介质
技术领域
本公开涉及计算机技术领域,尤其涉及一种代理程序的管理方法、装置、计算机设备及存储介质。
背景技术
在计算机设备的一种基础架构下,提供给各编程语言的开发框架SDK(软件开发工具包,Software Development Kit)通常需要依赖代理程序Agent去做一些前置操作,前置操作比如拉取数据,构建数据,更新数据,搭建环境等。
相关技术中,在代理程序Agent的实际应用中,通常是根据业务进程的需求由开发人员在计算机设备之中进行预装。
这种方式下,某些业务进程可能在一些时间节点后不再调用该底层服务,当其不再依赖相应的代理程序Agent,代理程序Agent相关联的进程仍然会占用计算机设备运算资源。
发明内容
本公开提供一种代理程序的管理方法、装置、计算机设备、存储介质及计算机程序产品,以至少解决相关技术中,某些业务进程可能在一些时间节点后不再调用该底层服务,当其不再依赖相应的代理程序Agent,代理程序Agent相关联的进程仍然会占用计算机设备运算资源的技术问题。本公开的技术方案如下:
根据本公开实施例的第一方面,提供一种代理程序的管理方法,包括:获取待管理代理程序的第一标识;从关联关系中确定与所述第一标识匹配的第二标识,所述第二标识为已注册的代理程序的标识,并确定与所述第二标识关联的软件开发工具包的标识,所述关联关系包括:所述已注册的代理程序的标识,和所述软件开发工具包的标识之间的关联关系;确定业务进程对所述软件开发工具包的标识所属的软件开发工具包的调用参数值,所述调用参数值用于描述所述业务进程对软件开发工具包的调用情况;如果所述调用参数值大于设定阈值,则停止所述待管理代理程序相关联的进程,所述设定阈值,是触发停止所述进程时调用参数的临界值。
在本公开的一些实施例中,在所述获取待管理代理程序的第一标识前,还包括:
获取所述软件开发工具包上报的心跳数据;
解析所述心跳数据得到代理程序版本号和代理程序的第二标识;
从预设代理程序库中,获取与所述代理程序版本号和所述代理程序的第二标识对应的代理程序,并注册所述代理程序。
在本公开的一些实施例中,当所述业务进程的数量为一个时,所述调用参数值,是所述业务进程停止对所述软件开发工具包调用后所持续的时间,所述如果所述调用参数值大于设定阈值,则停止所述待管理代理程序相关联的进程的步骤,包括:
如果所述所持续的时间大于所述设定阈值,则停止所述待管理代理程序相关联的进程;
如果所述所持续的时间小于或等于所述设定阈值,则获取当前时间,并根据所述当前时间和所述业务进程对所述软件开发工具包的最近一次的调用时间,重新计算所述所持续的时间。
在本公开的一些实施例中,当所述业务进程的数量为多个时,各个所述业务进程对应一个所述所持续的时间,则所述如果所述调用参数值大于设定阈值,则停止所述待管理代理程序相关联的进程的步骤,包括:
如果多个所述所持续的时间中,最小的所持续的时间大于所述设定阈值,则停止所述待管理代理程序相关联的进程。
在本公开的一些实施例中,在所述停止所述待管理代理程序相关联的进程后,还包括:
删除所述待管理代理程序安装目录中的资源。
根据本公开实施例的第二方面,提供一种代理程序的管理装置,包括:第一获取模块,被配置为执行获取待管理代理程序的第一标识;第一确定模块,被配置为执行从关联关系中确定与所述第一标识匹配的第二标识,所述第二标识为已注册的代理程序的标识,并确定与所述第二标识关联的软件开发工具包的标识,所述关联关系包括:所述已注册的代理程序的标识,和所述软件开发工具包的标识之间的关联关系;第二确定模块,被配置为执行确定业务进程对所述软件开发工具包的标识所属的软件开发工具包的调用参数值,所述调用参数值用于描述所述业务进程对软件开发工具包的调用情况;管理模块,被配置为执行如果所述调用参数值大于设定阈值,则停止所述待管理代理程序相关联的进程,所述设定阈值,是触发停止所述进程时调用参数的临界值。
在本公开的一些实施例中,还包括:
第二获取模块,被配置为执行在所述获取待管理代理程序的第一标识前,获取所述软件开发工具包上报的心跳数据;
解析模块,被配置为执行解析所述心跳数据得到代理程序版本号和代理程序的第二标识;
第三获取模块,被配置为执行从预设代理程序库中,获取与所述代理程序版本号和所述代理程序的第二标识对应的代理程序,并注册所述代理程序。
在本公开的一些实施例中,当所述业务进程的数量为一个时,所述调用参数值,是所述业务进程停止对所述软件开发工具包调用后所持续的时间,所述管理模块,被配置为执行:
如果所述所持续的时间大于所述设定阈值,则停止所述待管理代理程序相关联的进程;
如果所述所持续的时间小于或等于所述设定阈值,则获取当前时间,并根据所述当前时间和所述业务进程对所述软件开发工具包的最近一次的调用时间,重新计算所述所持续的时间。
在本公开的一些实施例中,当所述业务进程的数量为多个时,各个所述业务进程对应一个所述所持续的时间,则所述管理模块,被配置为执行:
如果多个所述所持续的时间中,最小的所持续的时间大于所述设定阈值,则停止所述待管理代理程序相关联的进程。
在本公开的一些实施例中,所述管理模块,被配置为执行在所述停止所述待管理代理程序相关联的进程后,删除所述待管理代理程序安装目录中的资源。
根据本公开实施例的第三方面,提供一种计算机设备,包括:处理器;用于存储所述处理器可执行指令的存储器;其中,所述处理器被配置为执行所述指令,以实现如前所述的代理程序的管理方法。
根据本公开实施例的第四方面,提供一种存储介质,当所述存储介质中的指令由计算机设备的处理器执行时,使得计算机设备能够执行如前所述的代理程序的管理方法。
根据本公开实施例的第五方面,提供一种计算机程序产品,该计算机程序由计算机设备的处理器执行时,使得计算机设备能够执行如前所述的代理程序的管理方法。
本公开的实施例提供的技术方案至少带来以下有益效果:通过获取待管理代理程序的第一标识,从关联关系中确定与第一标识匹配的第二标识,第二标识为已注册的代理程序的标识,并确定与第二标识关联的软件开发工具包的标识,确定业务进程对软件开发工具包的标识所属的软件开发工具包的调用参数值,调用参数值用于描述业务进程对软件开发工具包的调用情况,如果调用参数值大于设定阈值,则停止待管理代理程序相关联的进程,能够及时地对代理程序Agent相关联的进程进行停止控制,及时地释放进程所占用的硬件资源消耗,从而实现对代理程序Agent进行高效管理,提升对代理程序Agent的管理效果。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理,并不构成对本公开的不当限定。
图1是根据一示例性实施例示出的一种代理程序的管理方法的流程图。
图2是根据另一示例性实施例示出的一种代理程序的管理方法的流程图。
图3是根据又一示例性实施例示出的一种代理程序的管理方法的流程图。
图4为本公开实施例应用场景示意图。
图5是根据一示例性实施例示出的一种代理程序的管理装置框图。
图6是根据另一示例性实施例示出的一种代理程序的管理装置框图。
图7是根据一示例性实施例示出的一种计算机设备的框图。
具体实施方式
为了使本领域普通人员更好地理解本公开的技术方案,下面将结合附图,对本公开实施例中的技术方案进行清楚、完整地描述。
需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
图1是根据一示例性实施例示出的一种代理程序的管理方法的流程图。
如图1所示,代理程序的管理方法用于计算机设备中,其中,计算机设备例如智能手机、平板电脑、个人数字助理、电子书等具有各种操作系统的硬件设备,或者,计算机设备也可以例如为分布式系统中的单体服务器或者服务器集群,对此不做限制。
其中的代理程序即为相关技术中的代理程序Agent,该代理程序Agent可以是使用agent技术构建得到的,该代理程序Agent可以用于用来协助监测、运行甚至替换其它的程序。
本公开实施例中,为了解决相关技术中某些业务进程可能在一些时间节点后不再调用该底层服务,当其不再依赖相应的代理程序Agent,代理程序Agent相关联的进程仍然会占用计算机设备运算资源的技术问题,提供了一种代理程序的管理方法,能够及时地对代理程序Agent相关联的进程进行停止控制,及时地释放进程所占用的硬件资源消耗,从而实现对代理程序Agent进行高效管理,提升对代理程序Agent的管理效果。
该代理程序的管理方法包括以下步骤。
在步骤S101中,获取待管理代理程序的第一标识。
其中,第一标识能够用于唯一标识该待管理程序,第一标识比如可以为待管理程序的名称,或者也可以为其它能够用于标识该待管理程序的标识,对此不做限制。
本公开实施例可以具体应用在计算机设备上安装的元Agent中(meta-agent),该元Agent可以被视为一个管理平台,基于该元Agent实现对各个待管理代理程序相关联的进程进行动态管理。
本公开实施例中,不仅仅能够实现对计算机设备上全部的代理程序相关联的进程进行动态管理,还能够实现按需求对部分的代理程序相关联的进程进行动态管理,具有较好的灵活性。
在具体执行的过程中,可以采用计算机设备的显示控制逻辑调用预配置的元Agent的程序控制逻辑,在人机交互界面上显示代理程序Agent的管理界面,在管理界面之中显示多条已安装注册的代理程序Agent的标识,从而可以采用监听器监听针对代理程序Agent的管理指令。
也即是说,本公开实施例支持计算机设备监听管理指令,从而响应于该管理指令,解析管理指令所携带的待管理代理程序的第一标识,而后,可以确定与待管理代理程序对应的软件开发工具包(Software Development Kit,SDK)标识。
在步骤S102中,从关联关系中确定与第一标识匹配的第二标识,第二标识为已注册的代理程序的标识,并确定与第二标识关联的软件开发工具包的标识,关联关系包括:已注册的代理程序的标识,和软件开发工具包的标识之间的关联关系。
其中,与第二标识(第二标识与待管理代理程序的第一标识相匹配)关联的软件开发工具包SDK的标识,表明计算机设备上运行的一些业务进程调用该软件开发工具包的标识所属的软件开发工具包,从而对外提供该软件开发工具包所能够支撑的软件服务,并且该软件开发工具包对外提供相应的软件服务时,在处理逻辑上依赖该待管理代理程序。
本公开实施例中,可以是在每次对代理程序Agent进行安装部署时,即生成已注册代理程序的标识和软件开发工具包SDK的标识之间的关联关系,从而将关联关系保存至本地,以便于后续实时地调用读取,则本公开实施例中,可以直接从关联关系之中读取出与待管理代理程序的第一标识对应的第二标识,并确定与第二标识关联的软件开发工具包SDK的标识,从而能够有效提升整体管理控制逻辑的处理效率。
本公开实施例中,不仅仅能够实现按需求对部分的代理程序进行动态管理,还能够实现对代理程序Agent的按需注册安装,参见图2,图2是根据另一示例性实施例示出的一种代理程序的管理方法的流程图,在获取待管理代理程序的第一标识前,还包括:
在步骤S201中,获取软件开发工具包上报的心跳数据。
其中,当具有软件开发工具包SDK安装并运行的需求时,或者当软件开发工具包SDK具有对外提供软件服务的需求时,可以自动地向元Agent上报心跳数据,从而元Agent可以基于该心跳数据去注册相关的代理程序Agent。
其中的心跳数据用于描述注册代理程序Agent时所需要的一些信息,心跳数据例如包括计算机设备的端口号、代理程序Agent的保活时间,代理程序Agent版本号和代理程序Agent的标识。
在步骤S202中,解析心跳数据得到代理程序版本号和代理程序的第二标识。
在步骤S203中,从预设代理程序库中,获取与代理程序版本号和代理程序的第二标识对应的代理程序,并注册代理程序。
上述在元Agent接收到SDK上报的心跳数据之后,可以实时地解析心跳数据得到代理程序版本号和代理程序的第二标识,从而基于该代理程序版本号和代理程序的第二标识从预设代理程序库中下载匹配的代理程序Agent。
也即是说,本公开实施例中的计算机设备预先连接了一个预设代理程序库,在该预设代理程序预先配置了多个版本号的代理程序Agent的产品(本公开实施例中以代理程序Agent的产品为infra-ipip-agent进行示例,则预设代理程序库之中可以包含多个版本号的infra-ipip-agent),从而本公开实施例中支持根据实际注册安装的需求从预设代理程序库中拉取与代理程序版本号和代理程序的第二标识对应的代理程序,并安装代理程序
本公开上述图2所示实施例中,能够实现对代理程序Agent自动化的按需注册安装,从而提升代理程序Agent安装注册的灵活性,从而提升整体代理程序Agent管理的灵活性,提升代理程序Agent管理方法的应用范围,提升方法的适用性和实用性。
在步骤S103中,确定业务进程对软件开发工具包的标识所属的软件开发工具包的调用参数值,调用参数值用于描述业务进程对软件开发工具包的调用情况。
其中,业务进程为一些对外提供业务服务的进程,而进程(Process)是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位,是操作系统结构的基础。
也即是说,在本公开实施例所描述应用场景中,计算机设备通过运行底层服务中的业务进程,以辅助SDK对外进行相应的软件业务服务,而在运行业务进程的过程中,业务进程依据SDK的处理逻辑,去调用SDK的标识所属的SDK之中的一些方法或者类,从而,本公开实施例中的调用参数值,可以用于描述业务进程对软件开发工具包的调用情况,调用信息可以具体例如为某业务进程调用软件开发工具包SDK的标识所属的软件开发工具包的频率、持续时间,以及调用时间点等,对此不做限制。
在步骤S104中,如果调用参数值大于设定阈值,则停止待管理代理程序相关联的进程,设定阈值,是触发停止进程时调用参数的临界值。
其中的设定阈值,是触发停止进程时调用参数的临界值,可以根据实际的管理需求自适应设置,对此不做限制。
也即是说,上述在确定业务进程对软件开发工具包的标识所属的软件开发工具包的调用参数值之后,可以将该调用参数值与触发停止进程时调用参数的临界值进行比对,如果调用参数值大于触发停止进程时调用参数的临界值,则直接停止待管理代理程序相关联的进程,而如果调用参数值小于或者等于该触发停止进程时调用参数的临界值,可以实时地对调用参数值进行动态的更新,比如,可以实时地确定业务进程对软件开发工具包的调用情况,从而根据实时确定的结果对调用参数值进行更新,对此不做限制。
本实施例中,通过获取待管理代理程序的第一标识,从关联关系中确定与第一标识匹配的第二标识,第二标识为已注册的代理程序的标识,并确定与第二标识关联的软件开发工具包的标识,确定业务进程对软件开发工具包的标识所属的软件开发工具包的调用参数值,调用参数值用于描述业务进程对软件开发工具包的调用情况,如果调用参数值大于设定阈值,则停止待管理代理程序相关联的进程,能够及时地对代理程序Agent相关联的进程进行停止控制,及时地释放进程所占用的硬件资源消耗,从而实现对代理程序Agent进行高效管理,提升对代理程序Agent的管理效果。
图3是根据又一示例性实施例示出的一种代理程序的管理方法的流程图,如图3所示,
该代理程序的管理方法包括以下步骤。
在步骤S301中,获取待管理代理程序的第一标识。
在步骤S302中,从关联关系中确定与第一标识匹配的第二标识,第二标识为已注册的代理程序的标识,并确定与第二标识关联的软件开发工具包的标识,关联关系包括:已注册的代理程序的标识,和软件开发工具包的标识之间的关联关系。
在步骤S303中,确定业务进程停止对软件开发工具包调用后所持续的时间。
在步骤S304中,如果所持续的时间大于设定阈值,则停止待管理代理程序相关联的进程。
在步骤S305中,如果所持续的时间小于或等于设定阈值,则获取当前时间,并根据当前时间和业务进程对软件开发工具包的最近一次的调用时间,重新计算所持续的时间。
当调用参数值,是业务进程停止对软件开发工具包调用后所持续的时间时,该设定阈值可以具体为一个时间差阈值,比如该时间差阈值可以是被携带在心跳数据中,也即是说,不同的代理程序Agent可以对应不同或者相同的时间差阈值,该时间差阈值可以具体是依据代理程序Agent所能够提供的业务功能进行自适应配置的,或者,也可以结合心跳数据之中的代理程序Agent的保活时间自适应调整,对此不做限制。
上述业务进程停止对软件开发工具包调用后所持续的时间,可以是确定业务进程对SDK标识所属的SDK的最近一次的调用时间,并结合了最近一次的调用时间和当前时间计算出所持续的时间,对此不做限制。
也即是说,确定了业务进程对SDK标识所属的SDK的最近一次的调用后持续的时间,将当前时间与最近一次的调用时间做差值以得到所持续的时间,从而去判断所持续的时间是否大于设定阈值,如果所持续的时间大于设定阈值,则停止待管理代理程序相关联的进程,表明在此期间业务进程未对SDK标识所属的SDK进行调用,此时,可以及时地执行清理程序,停止待管理代理程序相关联的进程,还可以执行删除待管理代理程序安装目录中的资源的步骤,从而避免占用过多硬软件的存储资源,而如果所持续的时间小于或等于设定阈值,则表明当前业务进程未对SDK标识所属的SDK进行调用的持续时间在可允许的时间范围之内,此时可以继续监听SDK上报的心跳数据,解析得到业务进程对软件开发工具包的最近一次的调用时间,并获取当前时间,而后,根据当前时间和业务进程对软件开发工具包的最近一次的调用时间,重新计算所持续的时间。
另外一些实施例中,当业务进程的数量为多个时,各个业务进程对应一个所持续的时间,则如果调用参数值大于设定阈值,则停止待管理代理程序相关联的进程的步骤,包括:如果多个所持续的时间中,最小的所持续的时间大于设定阈值,则停止待管理代理程序相关联的进程。
作为一种示例,一并参见图4,图4为本公开实施例应用场景示意图,在图4的应用场景中,可能会有多个业务进程对相应SDK进行调用,则各个业务进程对应一个所持续的时间,则如果多个所持续的时间中,最小的所持续的时间大于设定阈值,则停止待管理代理程序相关联的进程,并删除待管理代理程序安装目录中的资源,也即是说,当确定有多个业务进程调用SDK时,则在检测每个业务进程对应的所持续的时间均大于设定阈值时,则停止待管理代理程序相关联的进程,从而避免对业务服务产生影响,提升方法的应用性和合理性,提升方法的应用效果。
在图4中,以预设代理程序库为infra-ipip-agent产品库进行示例,元Agent接收到心跳数据,解析心跳数据得到代理程序版本号和代理程序的第二标识,从infra-ipip-agent产品库之中,获取与代理程序版本号和代理程序的第二标识对应的代理程序,并注册安装代理程序,从而实现按需注册安装,在注册安装之后,基于元Agent对所安装部署的代理程序Agent(infra-ipip-agent)进行动态管理,确定业务进程对软件开发工具包的标识所属的软件开发工具包的调用参数值,如果调用参数值大于设定阈值,则停止待管理代理程序相关联的进程,设定阈值,是触发停止进程时调用参数的临界值,这些过程均为自动化执行的过程,从而降低代理程序Agent安装管理过程中的人工成本,使得对代理程序Agent管理更为灵活。
图5是根据一示例性实施例示出的一种代理程序的管理装置框图。
参照图5,该代理程序的管理装置50包括。
第一获取模块501,被配置为执行获取待管理代理程序的第一标识。
第一确定模块502,被配置为执行从关联关系中确定与第一标识匹配的第二标识,第二标识为已注册的代理程序的标识,并确定与第二标识关联的软件开发工具包的标识,关联关系包括:已注册的代理程序的标识,和软件开发工具包的标识之间的关联关系。
第二确定模块503,被配置为执行确定业务进程对软件开发工具包的标识所属的软件开发工具包的调用参数值,调用参数值用于描述业务进程对软件开发工具包的调用情况。
管理模块504,被配置为执行如果调用参数值大于设定阈值,则停止待管理代理程序相关联的进程,设定阈值,是触发停止进程时调用参数的临界值。
在本公开的一些实施例中,参见图6,还包括:
第二获取模块505,被配置为执行在获取待管理代理程序的第一标识前,获取软件开发工具包上报的心跳数据。
解析模块506,被配置为执行解析心跳数据得到代理程序版本号和代理程序的第二标识。
第三获取模块507,被配置为执行从预设代理程序库中,获取与代理程序版本号和代理程序的第二标识对应的代理程序,并注册代理程序。
在本公开的一些实施例中,当业务进程的数量为一个时,调用参数值,是业务进程停止对软件开发工具包调用后所持续的时间,管理模块504,被配置为执行:
如果所持续的时间大于设定阈值,则停止待管理代理程序相关联的进程;
如果所持续的时间小于或等于设定阈值,则获取当前时间,并根据当前时间和业务进程对软件开发工具包的最近一次的调用时间,重新计算所持续的时间。
在本公开的一些实施例中,当业务进程的数量为多个时,各个业务进程对应一个所持续的时间,则管理模块504,被配置为执行:
如果多个所持续的时间中,最小的所持续的时间大于设定阈值,则停止待管理代理程序相关联的进程。
在本公开的一些实施例中,管理模块504,被配置为执行在停止待管理代理程序相关联的进程后,删除待管理代理程序安装目录中的资源。
关于上述实施例中的代理程序的管理装置,其中各个模块执行操作的具体方式已经在有关该代理程序的管理方法的实施例中进行了详细描述,此处将不做详细阐述说明。
本实施例中,通过获取待管理代理程序的第一标识,从关联关系中确定与第一标识匹配的第二标识,第二标识为已注册的代理程序的标识,并确定与第二标识关联的软件开发工具包的标识,确定业务进程对软件开发工具包的标识所属的软件开发工具包的调用参数值,调用参数值用于描述业务进程对软件开发工具包的调用情况,如果调用参数值大于设定阈值,则停止待管理代理程序相关联的进程,能够及时地对代理程序Agent相关联的进程进行停止控制,及时地释放进程所占用的硬件资源消耗,从而实现对代理程序Agent进行高效管理,提升对代理程序Agent的管理效果。
本公开实施例还提供了一种计算机设备,图7是根据一示例性实施例示出的一种计算机设备的框图。例如,计算机设备600可以是移动电话,计算机,数字广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理等。
参照图6,计算机设备600可以包括以下一个或多个组件:处理组件602,存储器604,电源组件606,多媒体组件608,音频组件610,输入/输出(I/O)的接口612,传感器组件614,以及通信组件616。
处理组件602通常控制计算机设备600的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理组件602可以包括一个或多个处理器620来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件602可以包括一个或多个模块,便于处理组件602和其他组件之间的交互。例如,处理组件602可以包括多媒体模块,以方便多媒体组件608和处理组件602之间的交互。
存储器604被配置为存储各种类型的数据以支持在计算机设备600的操作。这些数据的示例包括用于在计算机设备600上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器604可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
电源组件606为计算机设备600的各种组件提供电力。电源组件606可以包括电源管理系统,一个或多个电源,及其他与为计算机设备600生成、管理和分配电力相关联的组件。
多媒体组件608包括在计算机设备600和用户之间的提供一个输出接口的触控显示屏。在一些实施例中,触控显示屏可以包括液晶显示器(LCD)和触摸面板(TP)。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件608包括一个前置摄像头和/或后置摄像头。当计算机设备600处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。
音频组件610被配置为输出和/或输入音频信号。例如,音频组件610包括一个麦克风(MIC),当计算机设备600处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器604或经由通信组件616发送。
在一些实施例中,音频组件610还包括一个扬声器,用于输出音频信号。
I/O接口612为处理组件602和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。
传感器组件614包括一个或多个传感器,用于为计算机设备600提供各个方面的状态评估。例如,传感器组件614可以检测到计算机设备600的打开/关闭状态,组件的相对定位,例如组件为计算机设备600的显示器和小键盘,传感器组件614还可以检测计算机设备600或计算机设备600一个组件的位置改变,用户与计算机设备600接触的存在或不存在,计算机设备600方位或加速/减速和计算机设备600的温度变化。传感器组件614可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件614还可以包括光传感器,如CMOS或CCD图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件614还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。
通信组件616被配置为便于计算机设备600和其他设备之间有线或无线方式的通信。计算机设备600可以接入基于通信标准的无线网络,如WiFi,2G或3G,或它们的组合。在一个示例性实施例中,通信组件616经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,通信组件616还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
在示例性实施例中,计算机设备600可以被一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述代理程序的管理方法。
在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器604,上述指令可由计算机设备600的处理器620执行以完成上述方法。例如,非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
一种非临时性计算机可读存储介质,当存储介质中的指令由计算机设备600的处理器执行时,使得计算机设备600能够执行一种代理程序的管理方法。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本公开旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。

Claims (13)

1.一种代理程序的管理方法,其特征在于,包括:
获取待管理代理程序的第一标识;
从关联关系中确定与所述第一标识匹配的第二标识,所述第二标识为已注册的代理程序的标识,并确定与所述第二标识关联的软件开发工具包的标识,所述关联关系包括:所述已注册的代理程序的标识,和所述软件开发工具包的标识之间的关联关系;
确定业务进程对所述软件开发工具包的标识所属的软件开发工具包的调用参数值,所述调用参数值用于描述所述业务进程对软件开发工具包的调用情况;
如果所述调用参数值大于设定阈值,则停止所述待管理代理程序相关联的进程,所述设定阈值,是触发停止所述进程时调用参数的临界值。
2.根据权利要求1所述的方法,其特征在于,在所述获取待管理代理程序的第一标识前,还包括:
获取所述软件开发工具包上报的心跳数据;
解析所述心跳数据得到代理程序版本号和代理程序的第二标识;
从预设代理程序库中,获取与所述代理程序版本号和所述代理程序的第二标识对应的代理程序,并注册所述代理程序。
3.根据权利要求1所述的方法,其特征在于,当所述业务进程的数量为一个时,所述调用参数值,是所述业务进程停止对所述软件开发工具包调用后所持续的时间,所述如果所述调用参数值大于设定阈值,则停止所述待管理代理程序相关联的进程的步骤,包括:
如果所述所持续的时间大于所述设定阈值,则停止所述待管理代理程序相关联的进程;
如果所述所持续的时间小于或等于所述设定阈值,则获取当前时间,并根据所述当前时间和所述业务进程对所述软件开发工具包的最近一次的调用时间,重新计算所述所持续的时间。
4.根据权利要求3所述的方法,其特征在于,当所述业务进程的数量为多个时,各个所述业务进程对应一个所述所持续的时间,则所述如果所述调用参数值大于设定阈值,则停止所述待管理代理程序相关联的进程的步骤,包括:
如果多个所述所持续的时间中,最小的所持续的时间大于所述设定阈值,则停止所述待管理代理程序相关联的进程。
5.根据权利要求4所述的方法,其特征在于,在所述停止所述待管理代理程序相关联的进程后,还包括:
删除所述待管理代理程序安装目录中的资源。
6.一种代理程序的管理装置,其特征在于,包括:
第一获取模块,被配置为执行获取待管理代理程序的第一标识;
第一确定模块,被配置为执行从关联关系中确定与所述第一标识匹配的第二标识,所述第二标识为已注册的代理程序的标识,并确定与所述第二标识关联的软件开发工具包的标识,所述关联关系包括:所述已注册的代理程序的标识,和所述软件开发工具包的标识之间的关联关系;
第二确定模块,被配置为执行确定业务进程对所述软件开发工具包的标识所属的软件开发工具包的调用参数值,所述调用参数值用于描述所述业务进程对软件开发工具包的调用情况;
管理模块,被配置为执行如果所述调用参数值大于设定阈值,则停止所述待管理代理程序相关联的进程,所述设定阈值,是触发停止所述进程时调用参数的临界值。
7.根据权利要求6所述的装置,其特征在于,还包括:
第二获取模块,被配置为执行在所述获取待管理代理程序的第一标识前,获取所述软件开发工具包上报的心跳数据;
解析模块,被配置为执行解析所述心跳数据得到代理程序版本号和代理程序的第二标识;
第三获取模块,被配置为执行从预设代理程序库中,获取与所述代理程序版本号和所述代理程序的第二标识对应的代理程序,并注册所述代理程序。
8.根据权利要求6所述的装置,其特征在于,当所述业务进程的数量为一个时,所述调用参数值,是所述业务进程停止对所述软件开发工具包调用后所持续的时间,所述管理模块,被配置为执行:
如果所述所持续的时间大于所述设定阈值,则停止所述待管理代理程序相关联的进程;
如果所述所持续的时间小于或等于所述设定阈值,则获取当前时间,并根据所述当前时间和所述业务进程对所述软件开发工具包的最近一次的调用时间,重新计算所述所持续的时间。
9.根据权利要求8所述的装置,其特征在于,当所述业务进程的数量为多个时,各个所述业务进程对应一个所述所持续的时间,则所述管理模块,被配置为执行:
如果多个所述所持续的时间中,最小的所持续的时间大于所述设定阈值,则停止所述待管理代理程序相关联的进程。
10.根据权利要求9所述的装置,其特征在于,所述管理模块,被配置为执行在所述停止所述待管理代理程序相关联的进程后,删除所述待管理代理程序安装目录中的资源。
11.一种计算机设备,其特征在于,包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现如权利要求1至5中任一项所述的代理程序的管理方法。
12.一种存储介质,当所述存储介质中的指令由计算机设备的处理器执行时,使得计算机设备能够执行如权利要求1至5中任一项所述的代理程序的管理方法。
13.一种计算机程序产品,包括计算机程序/指令,其特征在于,所述计算机程序/指令被处理器执行时实现权利要求1至5中任一项所述的代理程序的管理方法。
CN202011330507.5A 2020-11-24 2020-11-24 代理程序的管理方法、装置、计算机设备及存储介质 Active CN112506628B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011330507.5A CN112506628B (zh) 2020-11-24 2020-11-24 代理程序的管理方法、装置、计算机设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011330507.5A CN112506628B (zh) 2020-11-24 2020-11-24 代理程序的管理方法、装置、计算机设备及存储介质

Publications (2)

Publication Number Publication Date
CN112506628A CN112506628A (zh) 2021-03-16
CN112506628B true CN112506628B (zh) 2024-03-19

Family

ID=74958338

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011330507.5A Active CN112506628B (zh) 2020-11-24 2020-11-24 代理程序的管理方法、装置、计算机设备及存储介质

Country Status (1)

Country Link
CN (1) CN112506628B (zh)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101339535A (zh) * 2008-08-21 2009-01-07 金蝶软件(中国)有限公司 一种对应用程序进行性能监控的方法及装置
CN106125899A (zh) * 2016-07-01 2016-11-16 北京金山安全软件有限公司 停止进程的方法、装置和移动终端
CN108900370A (zh) * 2018-06-08 2018-11-27 努比亚技术有限公司 长连接多重超时判断方法、装置及计算机可读存储介质

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106293979B (zh) * 2015-06-25 2019-11-15 伊姆西公司 检测进程无响应的方法和装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101339535A (zh) * 2008-08-21 2009-01-07 金蝶软件(中国)有限公司 一种对应用程序进行性能监控的方法及装置
CN106125899A (zh) * 2016-07-01 2016-11-16 北京金山安全软件有限公司 停止进程的方法、装置和移动终端
CN108900370A (zh) * 2018-06-08 2018-11-27 努比亚技术有限公司 长连接多重超时判断方法、装置及计算机可读存储介质

Also Published As

Publication number Publication date
CN112506628A (zh) 2021-03-16

Similar Documents

Publication Publication Date Title
CN105955765B (zh) 应用预加载方法及装置
CN109388625B (zh) 多分布式文件系统中处理配置文件的方法及装置
CN107463372B (zh) 一种数据驱动的页面更新方法和装置
CN112256448A (zh) 远程控制方法、装置、电子设备、系统及存储介质
CN115185717A (zh) 接口调用方法、装置、电子设备和存储介质
CN109062625B (zh) 应用程序加载的方法、装置及可读存储介质
CN112256563A (zh) 安卓应用稳定性测试方法、装置、电子设备及存储介质
CN105786561B (zh) 进程调用的方法及装置
CN111580824A (zh) 程序优化方法、装置及存储介质
CN110865823A (zh) 预装应用控制方法、预装应用控制装置及存储介质
CN112506628B (zh) 代理程序的管理方法、装置、计算机设备及存储介质
CN116360979A (zh) 内存分配方法、装置、电子设备及可读存储介质
CN106354595B (zh) 移动终端、硬件组件状态检测方法及装置
CN110457084B (zh) 一种加载方法及装置
CN111241134B (zh) 一种数据处理方法及装置
CN111597106A (zh) 一种埋点管理方法及装置
CN112819061A (zh) 口令信息识别方法、装置、设备及存储介质
CN107257384B (zh) 服务状态监控方法及装置
CN115203618B (zh) 页面处理方法、装置、电子设备及存储介质
CN114489641B (zh) 一种数据处理方法、装置、电子设备及存储介质
CN114416084B (zh) 一种数据处理方法、装置、电子设备及存储介质
CN114531493B (zh) 一种请求处理方法、装置、电子设备及存储介质
CN114416218B (zh) 一种数据处理方法、装置、电子设备及存储介质
CN115412533B (zh) 终端设备及其控制方法、装置和存储介质
CN110377312B (zh) 一种软件升级方法、装置及介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant