一种信息处理方法、设备及装置与流程

文档序号:16207880发布日期:2018-12-08 07:20阅读:180来源:国知局
一种信息处理方法、设备及装置与流程

本发明涉及信息处理技术领域,尤其涉及一种信息处理方法、设备及装置。

背景技术

目前,使用容器编排系统(kubernetes)动态生成运行服务时,如果服务运行时,服务开发人员可以对服务运行状态进行实时监控。而容器一旦销毁,容器内部应用运行时的日志等信息则一并丢失,无法有效对应用进行分析。这种情况下,服务开发人员无法对服务运行状况进行有效的评估。



技术实现要素:

有鉴于此,本发明实施例为解决现有技术中存在的问题而提供一种信息处理方法、设备及装置,能够保存容器中应用的相关数据,从而提高系统可靠性。

本发明实施例的技术方案是这样实现的:

一方面,本发明实施例提供一种信息处理方法,应用于电子设备,所述方法包括:

当启动服务接收到启动应用的第一指令时,基于所述第一指令,获取第一容器,其中,所述第一容器是与所述应用对应的容器;

所述启动服务基于所述第一指令,启动所述第一容器,其中,所述第一容器内置代理服务;

所述代理服务通过第一插件采集所述应用在运行过程中生成的数据;

所述代理服务将所述数据发送至路由服务,其中,所述路由服务不在所述第一容器中。

另一方面,本发明实施例提供一种电子设备,所述电子设备至少包括存储器、通信总线和处理器,其中:

所述存储器,用于存储信息处理程序;

所述通信总线,用于实现处理器和存储器之间的连接通信;

所述处理器,用于执行存储器中存储的信息处理程序,以实现本发明实施例提供的信息处理方法的步骤。

再一方面,本发明实施例提供一种信息处理装置,所述信息处理装置包括:第一获取模块、第一启动模块、采集模块和第一发送模块,其中:

所述第一获取模块,用于当接收到启动应用的第一指令时,基于所述第一指令,获取第一容器,其中,所述第一容器是与所述应用对应的容器;

所述第一启动模块,用于基于所述第一指令,启动所述第一容器,其中,所述第一容器内置代理服务;

采集模块,用于通过第一插件采集所述应用在运行过程中生成的数据;

第一发送模块,用于将所述数据发送至路由服务,其中,所述路由服务不在所述第一容器中。

本发明实施例提供一种信息处理方法、设备及装置,其中,首先当启动服务接收到启动应用的第一指令时,基于所述第一指令,获取第一容器,其中,所述第一容器是与所述应用对应的容器;然后所述启动服务基于所述第一指令,启动所述第一容器,其中,所述第一容器内置代理服务;继而所述代理服务通过第一插件采集所述应用在运行过程中生成的数据;最后所述代理服务将所述数据发送至路由服务,其中,所述路由服务不在所述第一容器中;如此,由于路由服务不在所述第一容器中,因此即便第一容器被销毁也能从路由服务获取第一容器中的应用的相关数据,从而能够对应用的运行状况进行评估,进而提高系统的可靠性。

附图说明

图1为本发明实施例一种信息处理方法的实现流程示意图;

图2为本发明实施例另一种信息处理方法的实现流程示意图;

图3为本发明实施例信息处理方法的应用场景示意图;

图4为本发明实施例电子设备的组成结构示意图;

图5为本发明实施例信息处理装置的组成结构示意图。

具体实施方式

下面结合附图和具体实施例对本发明的技术方案进一步详细阐述。

本实施例提供一种信息处理方法,该方法应用于电子设备,该信息处理方法所实现的功能可以通过电子设备中的处理器调用程序代码来实现,当然程序代码可以保存在计算机存储介质中,可见,该电子设备至少包括处理器和存储介质。

图1为本发明实施例一种信息处理方法的实现流程示意图,如图1所示,该方法包括:

步骤s101,当启动服务接收到启动应用的第一指令时,基于所述第一指令,获取第一容器。

这里,所述步骤s101可以是由电子设备实现的,所述电子设备可以是是智能终端,例如可以是移动电话(手机)、平板电脑、笔记本电脑等具有无线通信能力的移动终端设备,还可以是台式计算机、桌面电脑等不便移动的智能终端设备。

所述第一容器是与所述应用对应的容器。容器是位于应用/组件和服务器平台之间的接口集合,使得应用/组件可以方便部署到服务器上运行。应用往往都有很多的组件,例如,大多数应用都需要数据库或中间件服务的支持以实现对数据的存储、检索和集成。所以,需要通过设计和部署把这些服务拆分成为应用自己的容器。一般来说,一个应用运行在一个进程中,基于一个容器只运行一个进程的理论,一个应用对应着一个容器。当然,一个容器中运行一个应用并不是绝对的,在某种情况下,一个容器中也可以运行多个一个应用。

在本发明实施例中,启动应用的第一指令可以是用户点击了所述应用的图标,还可以是用户做出了预设的启动所述应用的操作,例如可以是用户做出了预设的启动所述应用的手势,或者发出来预设的启动所述应用的语音。所述第一指令中携带有所述应用的标识。

在启动服务接收到所述第一指令后,获取所述第一指令中携带的应用的标识,再基于所述应用的标识获取所述应用对应的第一容器。

需要说明的是,在本实施例中,可以一个启动服务负责一个应用的启动,还可以是一个启动服务负责多个应用的启动。

步骤s102,所述启动服务基于所述第一指令,启动所述第一容器。

这里,当启动服务接收到第一指令后,会对第一指令进行解析,以了解所述第一指令的意图,并基于第一指令进行相应的响应。在本实施例中,由于第一指令是用于启动应用的指令,而应用又运行在第一容器中,因此,需要基于所述第一指令,启动所述第一容器。

所述第一容器内置代理(agent)服务。由于应用是由各种各样的组件构成,而组件跟容器通讯,或者组件与同一容器中其他组件通讯靠的就是“服务”,“服务”可以由容器默认提供,也即容器中内置服务,各个组件可以获取容器的服务,每个服务负责一项或者几项紧密相关的任务。例如,所述代理服务负责采集应用运行的数据并将数据发送给路由服务。

步骤s103,所述代理服务通过第一插件采集所述应用在运行过程中生成的数据。

这里,所述第一插件为能够实时采集所述应用在运行过程中生成的数据的插件。所述第一插件包括但不限于是thrift、http、shell、jms、file、directory、kafka插件。

步骤s104,所述代理服务将所述数据发送至路由服务。

这里,所述路由(route)服务不在所述第一容器中,是容器编排系统外置的服务。

容器编排系统能够提供如容器配置、发布和发现、系统监控和故障恢复、声明式系统配置以及有关容器布置和性能的规则和约束定义机制。目前常用的容器编排系统包括dockerswarm、kubernetes、marathon和nomad。在本实施例中,使用的是kubernetes容器编排系统。kubernetes是一个完备的分布式系统支持平台,支持多层安全防护、准入机制、多租户应用支撑、透明的服务注册、服务发现、内建负载均衡、强大的故障发现和自我修复机制、服务滚动升级和在线扩容、可扩展的资源自动调度机制、多粒度的资源配额管理能力,完善的管理工具,包括开发、测试、部署、运维监控,一站式的完备的分布式系统开发和支撑平台。

由于所述路由服务是kubernetes外置的,不存在与所述第一容器中的服务,因此即便在容器发生意外销毁时,所述路由服务不会被销毁的,进而可以通过路由服务获取容器在销毁前的一些运行信息,从而对这些运行信息进行分析,获取应用的运行状况以及容器销毁的原因,以便对系统进行改进,进一步提高系统的可靠性。

在本发明实施例提供的信息处理方法中,首先当启动服务接收到启动应用的第一指令时,基于所述第一指令,获取第一容器,其中,所述第一容器是与所述应用对应的容器;然后所述启动服务基于所述第一指令,启动所述第一容器,其中,所述第一容器内置代理服务;继而所述代理服务通过第一插件采集所述应用在运行过程中生成的数据;最后所述代理服务将所述数据发送至路由服务,其中,所述路由服务不在所述第一容器中;如此,由于路由服务不在所述第一容器中,因此即便第一容器被销毁也能从路由服务获取第一容器中的应用的相关数据,从而能够对应用的运行状况以及容器的运行状况进行评估,进而提高系统的可靠性。

基于前述的实施例,本发明实施例再提供一种信息处理方法,图2为本发明实施例信息处理方法的实现流程示意图,如图2所示,所述方法包括以下步骤:

步骤s201,当启动服务接收到启动应用的第一指令时,基于所述第一指令,获取第一容器。

这里,所述第一容器是与所述应用对应的容器。

步骤s202,所述启动服务基于所述第一指令,启动所述第一容器。

这里,所述第一容器内置代理服务。

步骤s203,所述代理服务通过第一插件采集所述应用在运行过程中生成的数据。

步骤s204,所述代理服务将所述数据发送至路由服务。

这里,所述路由服务不在所述第一容器中。

在本实施例中,所述代理服务将所述数据发送至路由服务可以通过两种方式实现:

第一种方式,所述代理服务经过预设间隔时长由套接字方式将所述数据发送至所述路由服务;

第二种方式,当所述代理服务采集到的数据所占用的空间大小大于预设阈值时,由套接字方式将所述数据发送至所述路由服务。

步骤s205,所述路由服务存储所述数据。

这里,所述路由存储所述数据可以是将所述数据写入本地磁盘,或者写入指定服务器中。

步骤s206,请求数据的服务接收到获取应用的数据的第二指令。

这里,所述请求数据的服务可以是数据留存服务,还可以是数据展示服务。

步骤s207,基于所述第二指令,所述请求数据的服务向所述第一容器的运行服务发送用于获取所述应用的数据的第二请求消息。

这里,由于代理服务并不是实时地在向路由服务发送数据,因此为了获取最全面的数据,需要向容器中的运行服务发送第二请求消息,以获取所述应用的数据。

步骤s208,所述请求数据的服务判断是否接收到所述运行服务发送的第二响应消息。

这里,如果所述请求数据的服务接收到所述运行服务发送的第二响应消息,那么说明所述容器没有被销毁,此时进入步骤s209;如果所述请求数据的服务没有接收到所述运行服务发送的第二响应消息,说明所述容器被销毁,此时进入步骤s210。

在其他实施例中,在所述请求数据的服务判断是否接收到所述第二响应消息时,可以启动一个计时器计时,判断在预设时长内是否接收到所述第二响应消息,如果在预设时长内接收到所述第二响应消息,进入步骤s208;如果在预设时长内接收到所述第二响应消息,进入步骤s209。

步骤s209,所述请求数据的服务解析所述第二响应消息,得到所述第二响应消息中携带的所述应用的数据。

步骤s210,所述请求数据的服务向所述路由服务发送用于获取所述应用的数据的第一请求消息。

步骤s211,所述路由服务解析接收到的所述第一请求消息,获取所述应用的标识。

步骤s212,所述路由服务根据所述应用的标识,获取所述应用的数据。

步骤s213,所述路由服务将所述应用的数据携带于第一响应消息中,发送给所述请求数据的服务。

这里,所述步骤s213在实现的过程中,可以是所述路由服务将所述应用的数据携带于第一响应消息中,通过所述第一插件发送给所述请求数据的服务。

步骤s214,所述请求数据的服务接收并解析所述第一响应消息,获取所述第一响应消息中携带的所述应用的数据。

在其他实施例中,在所述步骤s206之后,可以不执行步骤s207至步骤s209,而直接执行步骤s210,也即在所述请求数据的服务接收到所述第二指令后,直接向所述路由服务发送所述第一请求消息,因为所述路由服务是第一容器之外的服务,即便第一容器被销毁也是存在的,那么向路由服务发送第一请求消息是一定能获取到所述应用的数据的。

需要说明的是,本实施例中与其它实施例中相同步骤或概念的解释可以参考其它实施例中的描述。

图3为本发明实施例信息处理方法的应用场景示意图,如图3所示,在第一容器301外置有路由服务302,代理服务305将应用运行过程中产生的数据发送给路由服务302,在请求数据的服务303需要获取应用的数据时,如果所述第一容器301没有销毁时,所述请求数据的服务303向第一容器内的运行服务304发送第二请求消息,以获取数据;在容器销毁时,所述请求数据的服务303向路由服务302发送第一请求消息以获取数据。

在本发明实施例提供的信息处理方法中,首先当启动服务接收到启动应用的第一指令时,基于所述第一指令,获取第一容器,并基于所述第一指令,启动所述第一容器,其中,所述第一容器内置代理服务;所述代理服务通过第一插件采集所述应用在运行过程中生成的数据,并将所述数据发送至路由服务,其中,所述路由服务不在所述第一容器中;当请求数据的服务接收到获取应用的数据的第二指令时,基于所述第二指令,向所述第一容器的运行服务发送用于获取所述应用的数据的第二请求消息;如果接收到所述运行服务发送的第二响应消息,解析所述第二响应消息,得到所述第二响应消息中携带的所述应用的数据;如果没有接收到所述第二响应消息,向所述路由服务发送用于获取所述应用的数据的第一请求消息;所述请求数据的服务接收并解析第一响应消息,得到所述第一响应消息中携带的所述应用的数据;如此,将应用数据发送给容器之外的路由服务,能够保证在容器销毁的情况下也能获取到应用或者容器的运行信息,以便于确定容器销毁的原因及容器销毁前的运行状况。

基于前述的实施例,本发明实施例再提供一种信息处理方法,所述方法包括以下步骤:

步骤31,当启动服务接收到启动应用的第一指令时,基于所述第一指令,获取第一容器。

这里,所述第一容器是与所述应用对应的容器。

步骤32,所述启动服务基于所述第一指令,启动所述第一容器。

这里,所述第一容器内置代理服务。

步骤33,所述代理服务通过第一插件采集所述应用在运行过程中生成的数据。

步骤34,所述代理服务将所述数据发送至路由服务。

这里,所述路由服务不在所述第一容器中。

在本实施例中,所述代理服务将所述数据发送至路由服务可以通过两种方式实现:

第一种方式,所述代理服务经过预设间隔时长由套接字方式将所述数据发送至所述路由服务;

第二种方式,当所述代理服务采集到的数据所占用的空间大小大于预设阈值时,由套接字方式将所述数据发送至所述路由服务。

步骤35,所述路由服务存储所述数据。

这里,所述路由存储所述数据可以是将所述数据写入本地磁盘,或者写入指定服务器中。

步骤36,请求数据的服务接收到获取应用的数据的第二指令。

这里,所述请求数据的服务可以是数据留存服务,还可以是数据展示服务。

步骤37,所述请求数据的服务基于所述第二指令,向所述路由服务发送用于获取所述应用的数据的第一请求消息,并向所述第一容器的运行服务发送用于获取所述应用的数据的第二请求消息。

这里,由于通过所述第一容器的运行服务可以获取到最全面、实时的数据,但如果第一容器被销毁,则不能从运行服务获取数据;而通过路由服务又能保证能够获取到数据,因此可以在接收到所述第二指令之后,所述请求数据的服务并行地向运行服务和路由服务发送用于获取数据的请求消息。

步骤38,所述请求数据的服务基于接收到的路由服务发送的第一响应消息和/或运行服务发送的第二响应消息,获取所述应用的数据。

需要说明的是,本实施例中与其它实施例中相同步骤或概念的解释可以参考其它实施例中的描述。

在本发明实施例提供的信息处理方法中,首先当启动服务接收到启动应用的第一指令时,基于所述第一指令,获取第一容器,并基于所述第一指令,启动所述第一容器,其中,所述第一容器内置代理服务;所述代理服务通过第一插件采集所述应用在运行过程中生成的数据,并将所述数据发送至路由服务,其中,所述路由服务不在所述第一容器中;当请求数据的服务接收到获取应用的数据的第二指令时,基于所述第二指令,向所述路由服务发送用于获取所述应用的数据的第一请求消息,并向所述第一容器的运行服务发送用于获取所述应用的数据的第二请求消息;最后基于接收到的路由服务发送的第一响应消息和/或运行服务发送的第二响应消息,获取所述应用的数据;如此,将应用运行过程中生成的数据发送给第一容器外的路由服务,在请求数据的服务需要获取应用的数据时,并行地向路由服务和第一容器中的运行服务发送用于获取数据的请求消息,这样不仅可以保证能够获取到应用的数据,并且还可以尽可能的获取最实时全面的数据。

这里,在实际实现过程中,所述步骤38可以通过以下步骤实现:

步骤381,所述请求数据的服务判断是否在预设等待时长内接收到第一响应消息和第二响应消息。

这里,所述预设等待时长是根据之前统计的从发送第一请求消息之后到接收到第一响应消息之间的第一等待时长以及从发送第二请求消息之后到接收到第二响应消息之间的第二等待时长确定的。如果第一容器没有销毁,那么在预设等待时长内应该能够接收到第二响应消息。

如果在所述预设等待时长内接收到所述第一响应消息和所述第二响应消息,进入步骤382;如果没有在预设时长内接收到所述第一响应消息和所述第二响应消息,进入步骤385。

步骤382,所述请求数据的服务获取所述第一响应消息中携带的第一数据和所述第一数据的第一属性信息。

这里,所述第一属性信息中至少包括第一起始时间、第一终止时间和第一空间大小。

所述第一起始时间可以是所述第一数据开始保存的时间,所述第一终止时间可以是所述第一数据结束保存的时间,所述第一空间大小可以是所述第一数据占用的存储空间大小。

步骤383,所述请求数据的服务获取所述第二响应消息中携带的第二数据和所述第二数据的第二属性信息。

这里,所述第二属性信息中至少包括第二起始时间、第二终止时间和第二空间大小。

步骤384,基于所述第一属性信息和所述第二属性信息,所述请求数据的服务从所述第一数据和所述第二数据中确定要保存的所述应用的数据。

步骤385,所述请求数据的服务判断是否在预设等待时长内接收到第一响应消息。

这里,如果在预设等待时长内接收到所述第一响应消息且没有接收到所述第二响应消息,进入步骤386;如果在预设等待时长内没有接收到第一响应消息,进入步骤387。

步骤386,所述请求数据的服务解析所述第一响应消息,获取所述应用的数据。

步骤387,如果在预设等待时长内接收到所述第二响应消息且没有接收到所述第一响应消息,解析所述第二响应消息,获取所述应用的数据。

在其他实施例中,这里,在实际应用中,所述步骤384可以通过以下步骤实现:

步骤41,如果所述第一终止时间早于所述第二终止时间,且所述第一空间大小小于所述第二空间大小,将所述第二数据确定为要保存的所述应用的数据;

步骤42,如果所述第一终止时间早于所述第二起始时间,或者如果所述第二终止时间早于所述第一起始时间,将所述第一数据和所述第二数据确定为保存的所述应用的数据;

步骤43,如果所述第二终止时间早于所述第一终止时间,且所述第二空间大小小于所述第一空间大小,将所述第一数据确定为要保存的所述应用的数据。

在步骤41至步骤43所在的实施例中,如果所述第一终止时间早于所述第二终止时间,且所述第一空间大小小于所述第二空间大小,说明路由服务中保存的第一数据比从运行服务获取的第二数据的结束保存时间早,第一空间大小小于所述第二空间大小说明第二数据中包含有第一数据,因此,此时将第二数据确定为要保存的应用的数据,相反所述第二终止时间早于所述第一终止时间,且所述第二空间大小小于所述第一空间大小,则将所述第一数据确定为要保存的所述应用的数据。而如果所述第一终止时间早于所述第二起始时间,或者如果所述第二终止时间早于所述第一起始时间,说明第一数据和第二数据是没有交集的,那么需要将第一数据和第二数据都确定要保存的所述应用的数据。

基于前述的实施例,本发明实施例提供一种电子设备,图4为本发明实施例电子设备的组成结构示意图,如图4所示,该电子设备400包括存储器401、通信总线402和处理器403,其中:

所述存储器401,用于存储信息处理程序;

所述通信总线402,用于实现处理器和存储器之间的连接通信;

所述处理器403,用于执行存储器中存储的信息处理程序,以实现以下步骤:

当启动服务接收到启动应用的第一指令时,基于所述第一指令,获取第一容器,其中,所述第一容器是与所述应用对应的容器;

所述启动服务基于所述第一指令,启动所述第一容器,其中,所述第一容器内置代理服务;

所述代理服务通过第一插件采集所述应用在运行过程中生成的数据;

所述代理服务将所述数据发送至路由服务,其中,所述路由服务不在所述第一容器中。

在其他实施例中,所述处理器403,还用于执行存储器中存储的信息处理程序,以实现以下步骤:

当请求数据的服务接收到获取应用的数据的第二指令时,基于所述第二指令,向所述路由服务发送用于获取所述应用的数据的第一请求消息;

所述请求数据的服务接收并解析第一响应消息,得到所述第一响应消息中携带的所述应用的数据。

在其他实施例中,在向所述路由服务发送用于获取所述应用的数据的第一请求消息之前,所述处理器403,还用于执行存储器中存储的信息处理程序,以实现以下步骤:

当请求数据的服务接收到获取应用的数据的第二指令时,基于所述第二指令,向所述第一容器的运行服务发送用于获取所述应用的数据的第二请求消息;

如果接收到所述运行服务发送的第二响应消息,解析所述第二响应消息,得到所述第二响应消息中携带的所述应用的数据;

如果没有接收到所述第二响应消息,向所述路由服务发送用于获取所述应用的数据的第一请求消息。

在其他实施例中,所述处理器403,还用于执行存储器中存储的信息处理程序,以实现以下步骤:

当请求数据的服务接收到获取应用的数据的第二指令时,基于所述第二指令,向所述路由服务发送用于获取所述应用的数据的第一请求消息,并向所述第一容器的运行服务发送用于获取所述应用的数据的第二请求消息;

基于接收到的路由服务发送的第一响应消息和/或运行服务发送的第二响应消息,获取所述应用的数据。

在其他实施例中,所述基于接收到的路由服务发送的第一响应消息和/或运行服务发送的第二响应消息,获取所述应用的数据,包括:

如果在预设等待时长内接收到所述第一响应消息且没有接收到所述第二响应消息,解析所述第一响应消息,获取所述应用的数据;或者,

如果在预设等待时长内接收到所述第二响应消息且没有接收到所述第一响应消息,解析所述第二响应消息,获取所述应用的数据;或者,

如果在预设等待时长内接收到所述第一响应消息和所述第二响应消息,获取所述第一响应消息中携带的第一数据和所述第一数据的第一属性信息;

获取所述第二响应消息中携带的第二数据和所述第二数据的第二属性信息;

基于所述第一属性信息和所述第二属性信息,从所述第一数据和所述第二数据中确定要保存的所述应用的数据。

在其他实施例中,所述第一属性信息中至少包括第一起始时间、第一终止时间和第一空间大小,所述第二属性信息中至少包括第二起始时间、第二终止时间和第二空间大小,对应地,所述基于所述第一属性信息和所述第二属性信息,从所述第一数据和所述第二数据中确定要保存的所述应用的数据,包括:

如果所述第一终止时间早于所述第二终止时间,且所述第一空间大小小于所述第二空间大小,将所述第二数据确定为要保存的所述应用的数据;

如果所述第一终止时间早于所述第二起始时间,或者如果所述第二终止时间早于所述第一起始时间,将所述第一数据和所述第二数据确定为保存的所述应用的数据;

如果所述第二终止时间早于所述第一终止时间,且所述第二空间大小小于所述第一空间大小,将所述第一数据确定为要保存的所述应用的数据。

在其他实施例中,所述处理器403,还用于执行存储器中存储的信息处理程序,以实现以下步骤:

所述路由服务解析接收到的所述第一请求消息,获取所述应用的标识;

所述路由服务根据所述应用的标识,获取所述应用的数据;

所述路由服务将所述应用的数据携带于第一响应消息中,发送给所述请求数据的服务。

在其他实施例中,所述代理服务将所述数据发送至路由服务,包括:所述代理服务经过预设间隔时长由套接字方式将所述数据发送至所述路由服务;或者,当所述代理服务采集到的数据所占用的空间大小大于预设阈值时,由套接字方式将所述数据发送至所述路由服务;

或者,

所述路由服务将所述应用的数据携带于第一响应消息中,发送给请求数据的服务,包括:所述路由服务将所述应用的数据携带于第一响应消息中,通过所述第一插件发送给所述请求数据的服务。

这里需要指出的是:以上电子设备实施例项的描述,与上述方法描述是类似的,具有同方法实施例相同的有益效果。对于本发明电子设备实施例中未披露的技术细节,本领域的技术人员请参照本发明方法实施例的描述而理解。

相应地,本发明实施例再提供一种计算机存储介质,所述计算机存储介质中存储有计算机可执行指令,所述该计算机可执行指令被处理器执行时实现上述实施例提供的信息处理方法的步骤。

本发明实施例提供一种信息处理装置,图5为本发明实施例信息处理装置的实现流程示意图,如图5所示,所述装置500包括:第一获取模块501、第一启动模块502、采集模块503和第一发送模块504,其中:

所述第一获取模块501,用于当接收到启动应用的第一指令时,基于所述第一指令,获取第一容器,其中,所述第一容器是与所述应用对应的容器;

所述第一启动模块502,用于基于所述第一指令,启动所述第一容器,其中,所述第一容器内置代理服务;

采集模块503,用于通过第一插件采集所述应用在运行过程中生成的数据;

第一发送模块504,用于将所述数据发送至路由服务,其中,所述路由服务不在所述第一容器中。

在其他实施例中,所述装置还包括:

第二发送模块,用于当接收到获取应用的数据的第二指令时,基于所述第二指令,向所述路由服务发送用于获取所述应用的数据的第一请求消息;

第一接收模块,用于接收并解析第一响应消息,得到所述第一响应消息中携带的所述应用的数据。

在其他实施例中,所述装置还包括:

第三发送模块,用于当接收到获取应用的数据的第二指令时,基于所述第二指令,向所述第一容器的运行服务发送用于获取所述应用的数据的第二请求消息;

解析模块,用于如果接收到所述运行服务发送的第二响应消息,解析所述第二响应消息,得到所述第二响应消息中携带的所述应用的数据;

第四发送模块,用于如果没有接收到所述第二响应消息,向所述路由服务发送用于获取所述应用的数据的第一请求消息。

在其他实施例中,所述装置还包括:

第五发送模块,用于当接收到获取应用的数据的第二指令时,基于所述第二指令,向所述路由服务发送用于获取所述应用的数据的第一请求消息,并向所述第一容器的运行服务发送用于获取所述应用的数据的第二请求消息;

第二获取模块,用于基于接收到的路由服务发送的第一响应消息和/或运行服务发送的第二响应消息,获取所述应用的数据。

在其他实施例中,所述第二获取模块包括:

第一获取单元,用于如果在预设等待时长内接收到所述第一响应消息且没有接收到所述第二响应消息,解析所述第一响应消息,获取所述应用的数据;或者,

第二获取单元,用于如果在预设等待时长内接收到所述第二响应消息且没有接收到所述第一响应消息,解析所述第二响应消息,获取所述应用的数据;或者,

第三获取单元,用于如果在预设等待时长内接收到所述第一响应消息和所述第二响应消息,获取所述第一响应消息中携带的第一数据和所述第一数据的第一属性信息;

第四获取单元,用于获取所述第二响应消息中携带的第二数据和所述第二数据的第二属性信息;

确定单元,用于基于所述第一属性信息和所述第二属性信息,从所述第一数据和所述第二数据中确定要保存的所述应用的数据。

在其他实施例中,所述第一属性信息中至少包括第一起始时间、第一终止时间和第一空间大小,所述第二属性信息中至少包括第二起始时间、第二终止时间和第二空间大小,对应地,所述确定单元还用于:

如果所述第一终止时间早于所述第二终止时间,且所述第一空间大小小于所述第二空间大小,将所述第二数据确定为要保存的所述应用的数据;

如果所述第一终止时间早于所述第二起始时间,或者如果所述第二终止时间早于所述第一起始时间,将所述第一数据和所述第二数据确定为保存的所述应用的数据;

如果所述第二终止时间早于所述第一终止时间,且所述第二空间大小小于所述第一空间大小,将所述第一数据确定为要保存的所述应用的数据。

在其他实施例中,所述装置还包括:

第三获取模块,用于解析接收到的所述第一请求消息,获取所述应用的标识;

第四获取模块,用于根据所述应用的标识,获取所述应用的数据;

第六发送模块,用于将所述应用的数据携带于第一响应消息中,发送给所述请求数据的服务。

在其他实施例中,所述第一发送模块包括:

第一发送单元,用于经过预设间隔时长由套接字方式将所述数据发送至所述路由服务;或者,

第二发送单元,用于当采集到的数据所占用的空间大小大于预设阈值时,由套接字方式将所述数据发送至所述路由服务;

在其他实施例中,所述第六发送模块包括:

第三发送单元,用于将所述应用的数据携带于第一响应消息中,通过所述第一插件发送给所述请求数据的服务。

这里需要指出的是:以上信息处理装置实施例项的描述,与上述方法描述是类似的,具有同方法实施例相同的有益效果。对于本发明信息处理装置实施例中未披露的技术细节,本领域的技术人员请参照本发明方法实施例的描述而理解。

应理解,说明书通篇中提到的“一个实施例”或“一实施例”意味着与实施例有关的特定特征、结构或特性包括在本发明的至少一个实施例中。因此,在整个说明书各处出现的“在一个实施例中”或“在一实施例中”未必一定指相同的实施例。此外,这些特定的特征、结构或特性可以任意适合的方式结合在一个或多个实施例中。应理解,在本发明的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。

需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。

在本申请所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。

上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元;既可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。

另外,在本发明各实施例中的各功能单元可以全部集成在一个处理单元中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。

本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、只读存储器(readonlymemory,rom)、磁碟或者光盘等各种可以存储程序代码的介质。

或者,本发明上述集成的单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、服务器、或者网络设备等)执行本发明各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储设备、rom、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1