一种网络数据的获取方法、装置和系统的制作方法

文档序号:10488165阅读:144来源:国知局
一种网络数据的获取方法、装置和系统的制作方法
【专利摘要】本发明实施例公开了一种网络数据的获取方法、装置和系统;本发明实施例采用定时获取配置文件,根据该配置文件加载相应的动态库文件,以及调用相应的插件函数,并从该配置文件中获取与该插件函数相关的参数,然后,根据这些参数执行该插件函数,以获取网络数据;该方案不仅实现和更新较为简单,易于进行功能扩展,而且可以减少资源的消耗。
【专利说明】
一种网络数据的获取方法、装置和系统
技术领域
[0001] 本发明涉及通信技术领域,具体涉及一种浏览器页面数据过滤方法、装置和系统。
【背景技术】
[0002] 随着互联网技术的发展,越来越多的人选择通过网络来获取自己所需的各种信 息,包括一些电子读物,比如电子书、电子期刊或电子报,等等。所谓电子读物,是指将文字、 图片、声音、和影像等讯息内容数字化的出版物或非出版物。与此同时,为了方便用户获取 电子读物,现有技术也相应地涌出了一批与阅读相关的终端应用,简称阅读应用。
[0003] 用户通过阅读应用获取的数据,一般可以分为用户相关数据、以及用户无关数据, 所谓用户相关数据,指的是用户的个性化数据,比如,用户的VIP(贵宾,very important people)等级、用户所订阅的服务内容、用户的书签、以及用户的收藏夹等,而用户无关数 据,指的是所有用户可以公用的数据,比如某些阅读界面的配置信息、页面上的插图、以及 电子读物的具体内容等。在现有技术中,一般的,阅读应用所属的服务端都会采用定时的守 护进程(daemon)拉取的方式来批量获取用户无关数据,并对该用户无关数据进行加工,然 后存储在本地,这样,每次用户访问时,服务端只需要调用用户相关的接口,以获取相应的 用户相关数据即可,而对于用户无关数据,便可以从本地获取,从而避免了在实时的请求中 调用过多的外部接口,减少了请求的耗时、以及对外部接口的依赖。
[0004] 在对现有技术的研究和实践过程中,本发明的发明人发现,由于各个模块的差异 性,在现有方案中,需要为每个模块都独立编写相应的守护进程,如果有新的模块加入或对 功能进行更新,还需要重新进行编程和整合,即现有方案采用的是硬编码的方式,实现和更 新均较为复杂,不易进行功能拓展,而且浪费资源。

【发明内容】

[0005] 本发明实施例提供一种网络数据的获取方法、装置和系统,不仅实现和更新较为 简单,易于进行功能扩展,而且可以减少资源的消耗。
[0006] 本发明实施例提供一种网络数据的获取方法,包括:
[0007] 定时获取配置文件;
[0008] 根据所述配置文件加载相应的动态库文件,以及调用相应的插件函数;
[0009] 从所述配置文件中获取与所述插件函数相关的参数;
[0010] 根据所述参数执行所述插件函数,以获取网络数据。
[0011] 相应的,本发明实施例还提供一种网络数据的获取装置,包括:
[0012] 文件获取单元,用于定时获取配置文件;
[0013] 调用单元,用于根据所述配置文件加载相应的动态库文件,以及调用相应的插件 函数;
[0014] 参数获取单元,用于从所述配置文件中获取与所述插件函数相关的参数;
[0015] 执行单元,用于根据所述参数执行所述插件函数,以获取网络数据。
[0016] 此外,本发明实施例还提供一种网络数据的获取系统,包括本发明实施例提供的 任一种网络数据的获取装置。
[0017] 本发明实施例采用定时获取配置文件,根据该配置文件加载相应的动态库文件, 以及调用相应的插件函数,并从该配置文件中获取与该插件函数相关的参数,然后,根据这 些参数执行该插件函数,以获取网络数据;由于该方案可以将在获取网络数据过程中的一 些逻辑处理操作以动态库文件和插件函数的方式来体现,因此,对于不同模块共有的一些 基础逻辑功能,如用户无关数据的获取等,只需共享同一动态库文件和插件函数即可,而无 需为每个模块均单独编写一套相应的完整代码,不仅实现更为简单,而且也便于进行更新 和功能扩展,比如,在进行功能拓展时,只需专注于该拓展功能的逻辑开发,而无需关注其 基础逻辑功能,等等,大大提高了其灵活性;进一步的,由于可以将实现相同功能的代码进 行共享,所以,可以减少大量重复的代码,减少资源的消耗。
【附图说明】
[0018] 为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使 用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于 本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附 图。
[0019] 图la是本发明实施例提供的网络数据的获取方法的场景示意图;
[0020] 图lb是本发明实施例提供的网络数据的获取方法的流程图;
[0021] 图2是本发明实施例提供的网络数据的获取方法的另一流程图;
[0022] 图3a是本发明实施例提供的网络数据的获取装置的结构示意图;
[0023] 图3b是本发明实施例提供的网络数据的获取装置的另一结构示意图;
[0024] 图4是本发明实施例提供的服务器的结构示意图。
【具体实施方式】
[0025]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完 整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于 本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施 例,都属于本发明保护的范围。
[0026] 本发明实施例提供一种网络数据的获取方法、装置和系统。
[0027] 其中,该网络数据的获取系统可以包括本发明实施例所提供的任一种网络数据的 获取装置,该网络数据的获取装置具体可以集成在服务器中,此外,该网络数据的获取系统 还可以包括其他的设备,比如终端,该终端主要用于接收服务器发送的网络数据。
[0028] 例如,参见图la,该服务器可以定时获取配置文件,根据该配置文件加载相应的动 态库文件,比如so文件,以及调用相应的插件函数,并从该配置文件中获取与该插件函数相 关的参数,然后,根据这些参数执行该插件函数,以获取网络数据;比如,可以将这些参数按 照顺序添加至参数列表中,然后,将该参数列表中的参数依次输入至所述插件函数中,执行 输入了参数的插件函数,以调用相应的外部接口,并通过该外部接口从服务器拉取原始网 络数据,对原始网络数据进行数据加工,得到网络数据,等等;此后,当终端需要获取该网络 数据,比如,当服务器接收到终端发送的数据获取请求时,并可以将得到的网络数据提供给 终端。
[0029] 以下分别进行详细说明。需说明的是,以下实施例的序号不作为对实施例优选顺 序的限定。
[0030] 实施例一、
[0031] 本实施例将从网络数据的获取装置的角度进行描述,该网络数据的获取装置具体 可以集成在服务器,比如应用服务器中。
[0032] -种网络数据的获取方法,包括:定时获取配置文件;根据该配置文件加载相应的 动态库文件,以及调用相应的插件函数;从该配置文件中获取与该插件函数相关的参数;根 据该参数执行该插件函数,以获取网络数据。
[0033] 如图lb所示,该网络数据的获取方法的具体流程可以如下:
[0034] 101、定时获取配置文件。
[0035]例如,具体可以设置一获取周期,然后按照该周期定时获取配置文件。其中,该周 期可以根据实际应用的需求进行设置,比如,可以设置每30秒获取一次,或每隔20秒获取一 次,等等。
[0036]其中,该配置文件的格式可以根据实际应用的需求而定,比如,可以是html或xml 等格式,等等。为了描述方便,在本发明实施例中,均以该配置文件具体为xml格式为例进行 说明。
[0037] 其中,在获取配置文件时,可以从其他设备,比如管理服务器或存储服务器中来获 取该配置文件,也可以预先将该配置文件加载在本地,从本地获取该配置文件,即在步骤 "定时获取配置文件"之前,该网络数据的获取方法还可以包括:
[0038] 确定当前运行环境符合预设条件时,加载配置文件。
[0039] 其中,当前运行环境可以包括运行时间信息、和/或各软硬件的状态信息等,而该 预设条件则可以根据实际应用的需求进行设置,比如,可以设置每隔一定的周期,便加载一 次该配置文件;又比如,还可以设置当某进程处于某个状态时,则加载该配置文件,等等,在 此不再赘述。
[0040] 可选的,为了节省信令流程,提供处理效率,在加载配置文件时,还可以判断该配 置文件是否发生了变化,若发生了变化,才重新进行加载,而如果没有发送变化,则可以沿 用上一次加载的配置文件。
[0041] 其中,判断该配置文件是否发生了变化的方式可以有多种,除了可以直接将当前 配置文件与上一次加载的配置文件进行比较之外,还可以通过配置文件的修改时间来进行 判断,即在步骤"加载配置文件"之后,该网络数据的获取方法还可以包括:
[0042] 确定配置文件的最后修改时间与上一次加载时的修改时间不一致时,重新加载该 配置文件。
[0043] 否则,若确定配置文件的最后修改时间与上一次加载时的修改时间一致,则表明 已加载的配置文件并没有发生变化,该已加载的配置文件为当前最新的版本,可以继续使 用。
[0044]例如,具体可以通过读取配置文件的文件状态信息,比如stat(文件状态)信息,来 确定该配置文件当前的最后修改时间和上一次加载时的修改时间是否一致,等等。
[0045] 102、根据该配置文件加载相应的动态库文件,以及调用相应的插件函数;例如,具 体可以如下:
[0046]读取该配置文件中的守护进程(比如daemon)任务,以确定当前需要执行的守护进 程任务,根据该当前需要执行的守护进程任务加载相应的动态库文件,以及调用相应的插 件函数。
[0047] 比如,可以从该当前需要执行的守护进程任务中获取相应的动态库文件的标识和 插件函数的标识,根据该动态库文件的标识调用相应的动态库文件,并加载该动态库文件, 比如so文件,然后,根据该插件函数的标识从该动态库文件中调用相应插件函数,等等。
[0048] 其中,守护进程是一种在运行在后台的特殊的进程,它独立于控制终端并且周期 性的执行某种任务或等待处理某些发生的事件。
[0049] 其中,动态库文件的标识可以包括动态库文件的名称或编号等可以识别出该动态 库文件的信息;而插件函数的标识则可以包括插件函数的名称或编号等可以识别出该插件 函数的信息。
[0050] 例如,以动态库文件的标识具体为动态库文件的名称,插件函数的标识具体为插 件函数的名称为例,若配置文件的内容如下:
[0052] 其中,handler节点表示的是一个插件函数,在上述配置文件的例子中具体指的是 libdaemon ? so库(即一个动态库文件)里的GetColumnBook函数(即一个插件函数)。而task 节点表示的是一条需要执行的守护进程(daemon)任务。
[0053] 贝,当该网络数据的获取装置读取到这条task记录后,便会找到名为 "getcolumnbook"的handler,然后,根据其中的信息加载相应的动态库文件,即加载〃 libdaemon. so〃,以及调用相应的插件函数,即调用〃GetColumnBook。
[0054] 需说明的,由于守护进程执行次数较少,无法通过模调上报来监控执行情况,因 此,一旦进程死掉或者访问外部接口失败,则容易因为无法及时处理而导致外网数据的时 效性问题,所以,为了避免由于无法及时发现进程死掉或者访问外部接口失败而导致的外 网数据的时效性问题,可选的,可以在每次触发守护进程的逻辑处理入口(比如在获取配置 文件之前)时,都进行一次特性信息的检测,其中,该特性信息的检测类似于一个心跳机制, 用于检查守护进程如daemon进程的存活情况,基于该特性信息可以判断该守护进程是否发 生异常,若异常,则可以发出告警,以便通知相关人员进行及时处理。即,可选的,该网络数 据的获取方法还可以包括:
[0055] 获取守护进程的逻辑处理入口的特性信息,根据该特性信息确定所述守护进程发 生异常时,生成告警信息。
[0056] 其中,该特性信息的格式具体可以根据实际应用的需求而定,比如,可以采用数值 型的特性来表示(即通过数值的高低来表示该特性信息),与此同时,可以在服务器(比如网 管系统)里设置同比下降的告警策略,如果出现数值下降,则表示守护进程的运行情况发生 异常,比如进程死掉或者访问外部接口失败,等等,需要发出告警信息,则此时,可以向预设 的终端发出告警信息。
[0057] 其中,告警信息发送渠道可以包括邮件、短信、和/或社交平台或即时通信平台的 消息等。
[0058] 103、从该配置文件中获取与该插件函数相关的参数。
[0059]其中,与该插件函数相关的参数可以包括数据存储相关的参数、用于区分该任务 是否为关键任务的参数、以及指示消息类型的参数等。例如,以如下插件函数为例:
[0061 ] 则与该插件函数相关的参数可以包括appid、netid、critical、errmsg、以及va_ list等,其中,appid和netid是数据存储相关的参数;critical参数用于区分该任务是否是 关键任务;errmsg是返回消息,如果函数返回值为非0,则该返回信息会以字符串型特性信 息进行上报;而以C语言的变参宏方式进行表示的参数va_list,则是为了处理不同业务场 景下,插件函数需要的参数类型和参数个数不同的问题而进行设置的。
[0062] 104、根据该参数执行该插件函数,以获取网络数据。
[0063] 例如,具体可以将该参数按照顺序添加至参数列表中,然后,根据该参数列表执行 该插件函数,以获取网络数据。
[0064] 其中,根据该参数列表执行该插件函数,以获取网络数据的方式可以有多种,比 如,可以如下:
[0065] 将该参数列表中的参数依次输入至该插件函数中,执行输入了参数的插件函数, 以获取网络数据。
[0066] 例如,以步骤102中示例的配置文件为例,则除了 "type"参数("type"是从task节 点的属性中获取的),其他参数可以按照出现的顺序依次传入插件函数中,即可以依次传入 "1"、"2477"、以及"20"。其中,参数的类型可以预先进行规定,比如,可以统一为char*类型, 等等。
[0067] 其中,将该参数列表中的参数依次输入至该插件函数,即函数参数栈压栈操作的 关键代码(32位机器)具体可以如下:
[0069] 在将参数输入插件函数之后,便可以利用输入了参数的插件函数调用相应的外部 接口,然后,通过该外部接口拉取原始网络数据,并对该原始网络数据进行数据加工,得到 网络数据。
[0070] 可选的,为了避免由于无法及时发现进程异常而导致的外网数据的时效性问题, 在数据加工失败时,还可以进行告警,即在步骤"对该原始网络数据进行数据加工,得到网 络数据"之后,该网络数据的获取方法还可以包括:
[0071] 若数据加工失败,则生成第一失败提示信息,比如生成字符串型的第一失败提示 信息,并根据该第一失败提示信息进行告警。
[0072] 比如,如果数据加工失败,则插件函数会返回一个指示错误的数值,比如返回一个 非〇的值(以〇表示正确,非〇表示错误为例),那么此时,便可以根据该数值判断出数据加工 失败,于是生成第一失败提示信息,并根据该第一失败提示信息进行告警,等等。
[0073] 可选的,在获取到网络数据之后,还可以将该网络数据写入预设存储空间,以进行 存储,即在步骤"对该原始网络数据进行数据加工,得到网络数据"之后,该网络数据的获取 方法还可以包括:
[0074] 将该网络数据写入预设存储空间。
[0075] 同理,为了避免由于无法及时发现进程异常而导致的外网数据的时效性问题,在 写入失败时,也同样可以进行告警,即具体可以如下:
[0076] 若写入失败,则生成第二失败提示信息,比如生成字符串型的第二失败提示信息, 并根据该第二失败提示信息进行告警。
[0077]比如,如果写入失败,则插件函数会返回一个指示错误的数值,比如返回一个非0 的值(以〇表示正确,非〇表示错误为例),那么此时,便可以根据该数值判断出写入失败,于 是进彳丁告警,等等。
[0078]其中,告警的方式可以有多种,比如可以进行文字、声音或图片等形式的提醒,等 等。
[0079]需说明的是,在生成第一失败提不彳目息或第二失败提不彳目息时,还可以在第一失 败提示信息或第二失败提示信息中携带相应的插件名称和/或函数名称,以便可以快速定 位发送异常的位置。
[0080] 由上可知,本实施例采用定时获取配置文件,根据该配置文件加载相应的动态库 文件,以及调用相应的插件函数,并从该配置文件中获取与该插件函数相关的参数,然后, 根据这些参数执行该插件函数,以获取网络数据;由于该方案可以将在获取网络数据过程 中的一些逻辑处理操作以动态库文件和插件函数的方式来体现,因此,对于不同模块共有 的一些基础逻辑功能,如用户无关数据的获取等,只需共享同一动态库文件和插件函数即 可,而无需为每个模块均单独编写一套相应的完整代码,不仅实现更为简单,而且也便于进 行更新和功能扩展,比如,在进行功能拓展时,只需专注于该拓展功能的逻辑开发,而无需 关注其基础逻辑功能(现有的开发新的daemon都需要重新开发daemon的基础逻辑功能,工 作量重复),等等,大大提高了其灵活性;进一步的,由于可以将实现相同功能的代码进行共 享,所以,可以减少大量重复的代码,减少资源的消耗。
[0081] 实施例二、
[0082] 根据实施例一所描述的方法,以下将举例作进一步详细说明。
[0083] 在本实施例中,将以该网络数据具体为电子读物信息,且该网络数据的获取装置 具体集成在服务器中为例进行说明。
[0084] 如图2所示,一种网络数据的获取方法,具体流程可以如下:
[0085] 201、服务器确定当前运行环境符合预设条件时,加载配置文件。
[0086] 其中,当前运行环境可以包括运行时间信息、和/或各软硬件的状态信息等,而该 预设条件则可以根据实际应用的需求进行设置。
[0087] 可选的,为了节省信令流程,提供处理效率,在加载配置文件时,还可以判断该配 置文件是否发生了变化,若发生了变化,才重新进行加载,而如果没有发送变化,则可以沿 用上一次加载的配置文件,例如,可以如下:
[0088]服务器读取配置文件的文件状态信息,比如stat(文件状态)信息,根据该文件状 态信息确定配置文件的最后修改时间与上一次加载时的修改时间是否一致,若一致,则可 以继续使用上一次加载的配置文件,否则,若不一致,则重新加载该配置文件。
[0089]可选的,为了避免由于无法及时发现进程死掉或者访问外部接口失败而导致的外 网数据的时效性问题,可以在每次触发守护进程的逻辑处理入口(比如在获取配置文件之 前)时,都进行一次特性信息的检测,比如,具体可以获取守护进程的逻辑处理入口的特性 信息,然后向该服务器中相应的检测模块上报该特性信息。
[0090]其中,该特性信息上报类似于一个心跳机制,用于检查守护进程(如daemon)的存 活情况,然后,由服务器基于该特性信息来判断该守护进程是否发生异常,若异常,则可以 发出告警,以便通知相关人员进行及时处理。
[0091]需说明的是,该特性信息的上报不影响配置文件的加载,即不管该守护进程是否 发生异常,均可以执行步骤201。
[0092] 202、服务器定时获取加载的配置文件。
[0093]例如,以该服务器包括免费书籍模块和排行榜模块,且此时需要获取免费书籍模 块和排行榜模块的相关电子读物信息为例,则相应的配置文件可以设置为:
[0095] 其中,handler节点表示的是插件函数,在上述配置文件的例子中具体指的是 libfree ? so库里的GetFreeBook函数,以及librank. so库里的GetRankBook函数。而task节 点表示的是需要执行的守护进程((^6111011)任务,8卩需要找到名为\61;^66130〇1^'和 "getrankbook"的handler,并根据其中的信息加载相应的动态库文件和插件函数,即加载 "libfree ? so"库和 "librank. so"库,以及调用 "libfree ? so"库里的 "GetFreeBook" 函数和 "librank. so"库里的 "GetRankBook" 函数。
[0096] 其中,"libfree.so"用于免费书籍模块,"librank.so"用于排行榜数据处理。
[0097] 203、服务器读取该配置文件中的守护进程(比如daemon)任务,以确定当前需要执 行的守护进程任务。
[0098]例如,以步骤202中所示例的配置文件为例,则此时,可以确定当前需要执行的守 护进程任务为:
[0100] 由上述代码可知,该当前需要执行的守护进程任务指示需要找到名称为 "getfreebook"的handler,并根据其中的信息加载相应的动态库文件和插件函数,即需要 执行"libfree. so"里的函数"GetFreeBook",其中,该函数是用于拉取加工免费模块所需要 的电子读物信息。
[0101] 又例如,若当前需要执行的守护进程任务为:
[0103] 则由上述代码可知,该当前需要执行的守护进程任务指示需要找到名称为 "getrankbook"的handler,并根据其中的信息加载相应的动态库文件和插件函数,即需要 执行"1 ibrank. so"里的函数"GetRankBook",其中,该函数是用于拉取指定排行榜的电子读 物信息并保存。
[0104] 204、服务器根据该当前需要执行的守护进程任务加载相应的动态库文件,以及调 用相应的插件函数。
[0105] 例如,若在步骤203中,该当前需要执行的守护进程任务指示需要找到名称为 "getfreebook"的handler,则此时,可以根据该handler中的信息加载相应的动态库文件 "libfree ? so",从动态库文件"libfree ? so"中找到名为"GetFreeBook"的插件函数。
[0106] 又例如,若在步骤203中,该当前需要执行的守护进程任务指示需要找到名称为 "getrankbook"的handler,则此时,可以根据该handler中的信息加载相应的动态库文件 "librank. so",从动态库文件"librank. so"中找到名为"GetRankBook"的插件函数。
[0107] 205、服务器从该配置文件中获取与该插件函数相关的参数,并将该参数按照顺序 添加至参数列表中。
[0108] 例如,若在步骤204中,调用的插件函数为GetFreeBook,则在执行插件函数 "GetFreeBook"时,可以将该当前需要执行的守护进程任务"〈task type = 〃getfreebook〃 critical = "true"plat = "l"columnid = "2477"booknum= "20"/>" 中的各个参数,比如 "critical"、"plat"、"columned"、以及"booknum"等这几个值作为参数按照顺序添加至插 件函数"GetFreeBook"所对应的参数列表中。
[0109] 其中,参数"columned"是免费书籍(即免费的电子读物)栏目的编号,而参数 "booknum"则表示需要拉取的电子读物数量,比如,booknum= "20",表示需要拉取的电子读 物数量为20本,等等。
[0110]又例如,若在步骤204中,调用的插件函数为"GetRankBook",则在执行插件函数 "GetRankBook"时,可以将该当前需要执行的守护进程任务"〈task type = 〃getrankbook〃 critical = "true"plat = "l"rankid = "2478"booknum= "100"/>" 中的各个参数,比如 "critical"、"plat"、"rankid"、以及"booknum"等这几个值作为参数按照顺序添加至函数 "getrankbook"所对应的参数列表中。
[0111] 其中,参数"rankid"表示的排行榜的编号,而"booknum"则表示需要拉取前多少名 的电子读物,比如,booknum = 〃 100 〃,表示需要拉取排行为前100名的电子读物信息,等等。
[0112] 206、服务器将该参数列表中的参数依次输入至该插件函数中并执行,以获取电子 读物信息,然后返回执行步骤203。
[0113] 例如,以当前需要执行的守护进程任务为"〈task type = 〃getfreebook〃critical ="true"plat = "1 "columnid = "2477"booknum= "20"/>" 为例,则此时,可以依次传入"1"、 "2477"、以及"20"至插件函数"GetFreeBook"中并执行,比如,可以利用输入了参数的插件 函数调用相应的外部接口,然后,通过该外部接口拉取原始电子读物信息,并对该原始电子 读物信息进行数据加工,得到电子读物信息。
[0114] 又例如,以当前需要执行的守护进程任务为"〈task type = 〃getrankbook〃 critical = "true"plat = "l"rankid = "2478"booknum= "100"/>" 为例,则此时,可以依次 传入"1"、"2478"、以及"100"至插件函数1的瓜吐13〇(^'中并执行,比如,可以利用输入了参 数的插件函数调用相应的外部接口,然后,通过该外部接口拉取原始电子读物信息,并对该 原始电子读物信息进行数据加工,得到电子读物信息,等等。
[0115] 可选的,为了避免由于无法及时发现进程异常而导致的外网数据的时效性问题, 在数据加工失败时,还可以进行告警,即在步骤"对该原始电子读物信息进行数据加工,得 到电子读物信息"之后,该网络数据的获取方法还可以包括:
[0116] 若数据加工失败,则生成字符串型的第一失败提示信息,根据该第一失败提示信 息进行告警。
[0117] 比如,如果数据加工失败,则插件函数会返回一个指示错误的数值,比如返回一个 非〇的值(以〇表示正确,非〇表示错误为例),那么,此时,服务器便可以根据该数值判断出数 据加工失败,于是进行告警,等等。
[0118] 可选的,在获取到电子读物信息之后,还可以将该电子读物信息写入预设存储空 间,以进行存储;同理,在写入失败时,也同样可以进行告警,即在步骤"对该原始电子读物 信息进行数据加工,得到电子读物信息"之后,该网络数据的获取方法还可以包括:
[0119] 将该电子读物信息写入预设存储空间,若写入失败,则生成字符串型的第二失败 提示信息,并根据该第二失败提示信息进行告警。
[0120] 比如,如果写入失败,则插件函数会返回一个指示错误的数值,比如返回一个非0 的值(以〇表示正确,非〇表示错误为例),那么,此时,服务器便可以根据该数值判断出写入 失败,于是进行告警,等等。
[0121]需说明的是,在返回第一失败提示信息或第二失败提示信息时,还可以第一失败 提示信息或第二失败提示信息中携带相应的插件名称和/或函数名称,以便可以快速定位 发送异常的位置。
[0122]此外,还需说明的是,不管第一个守护进程任务的插件函数的执行情况如何,都需 要继续执行下一个守护进程任务,即不管第一个"task"的插件函数是否返回表示成功的返 回值,都会继续下一个"task"的执行,即需要返回执行步骤203。
[0123] 比如,若第一个守护进程任务为"〈task type = 〃getfreebook〃critical = 〃true" plat = 〃l〃columnid = 〃2477〃booknum= 〃20〃/>",则此时,可以继续执行第二守护进程任 务,艮P将"〈task type = 〃getrankbook〃critical = 〃true〃plat = 〃1 〃rankid = "2478〃 booknum = "100"/>"作为当前需要执行的守护进程任务,详见步骤203。
[0124] 需说明的是,在执行完所有的守护进程任务(即task)后,该服务器会休眠等待指 定的时间,然后重新执行步骤201,如此循环反复,比如,在本实施例中是2个task,因此,在 执行完这两个task后,该服务器可以休眠等待指定的时间,然后再重新执行步骤201,以便 执行其他的task,依次类推。
[0125] 还需说明的是,为了提高处理效率,可选的,还可以开启多线程处理模式,以提高 并行处理的能力,即可以采用多个线程,并行处理多个守护进程任务,其中,每个守护进程 任务的执行与上述流程类似,在此不再赘述。
[0126] 由上可知,本实施例采用定时获取配置文件,根据该配置文件加载相应的动态库 文件,以及调用相应的插件函数,并从该配置文件中获取与该插件函数相关的参数,然后, 将这些参数按顺序依次传入该插件函数并执行,以获取电子读物信息;由于该方案可以将 在获取电子读物信息过程中的一些逻辑处理操作以动态库文件和插件函数的方式来体现, 因此,对于不同模块共有的一些基础逻辑功能,如用户无关数据的获取等,只需共享同一动 态库文件和插件函数即可,而无需为每个模块均单独编写一套相应的完整代码,不仅实现 更为简单,而且也便于进行更新和功能扩展,比如,在进行功能拓展时,只需专注于该拓展 功能的逻辑开发,而无需关注其基础逻辑功能,等等,大大提高了其灵活性;进一步的,由于 可以将实现相同功能的代码进行共享,所以,可以减少大量重复的代码,减少资源的消耗。
[0127] 进一步的,由于可以定时获取守护进程的逻辑处理入口的特性信息,并上报给服 务器,以及在发现其他处理异常,比如数据加工失败或写入数据失败时,进行告警,因此,可 以避免由于无法及时发现进程死掉或者访问外部接口失败而导致的外网数据的时效性问 题,大大改善数据处理的效果。
[0128] 实施例三、
[0129] 为了更好地实施以上方法,本发明实施例还提供一种网络数据的获取装置,如图 3a所示,该网络数据的获取装置包括文件获取单元301、调用单元、参数获取单元303和执行 单元304,如下:
[0130] (1)文件获取单元301;
[0131] 文件获取单元301,用于定时获取配置文件。
[0132] 例如,具体可以设置一获取周期,然后按照该周期定时获取配置文件。其中,该周 期可以根据实际应用的需求进行设置。
[0133] 其中,该配置文件的格式可以根据实际应用的需求而定,比如,可以采用xml格式。 [0134]其中,在获取配置文件时,可以从其他设备中来获取该配置文件,也可以预先将该 配置文件加载在本地,从本地获取该配置文件,即如图3b所示,该网络数据的获取装置还可 以包括加载单元305,如下:
[0135] 该加载单元305,可以用于确定当前运行环境符合预设条件时,加载配置文件。
[0136] 其中,当前运行环境可以包括运行时间信息、和/或各软硬件的状态信息等,而该 预设条件则可以根据实际应用的需求进行设置,比如,可以设置每隔一定的周期,便加载一 次该配置文件;又比如,还可以设置当某进程处于某个状态时,则加载该配置文件,等等,在 此不再赘述。
[0137] 可选的,为了节省信令流程,提供处理效率,在加载配置文件时,还可以判断该配 置文件是否发生了变化,若发生了变化,才重新进行加载,而如果没有发送变化,则可以沿 用上一次加载的配置文件。
[0138] 其中,判断该配置文件是否发生了变化的方式可以有多种,除了可以直接将当前 配置文件与上一次加载的配置文件进行比较之外,还可以通过配置文件的修改时间来进行 判断,即:
[0139] 该加载单元305,还可以用于在加载了配置文件之后,若确定配置文件的最后修改 时间与上一次加载时的修改时间不一致时,则重新加载该配置文件。
[0140] 否则,若确定配置文件的最后修改时间与上一次加载时的修改时间一致,则表明 已加载的配置文件并没有发生变化,该已加载的配置文件为当前最新的版本,可以继续使 用。
[0141] (2)调用单元 302;
[0142] 调用单元302,用于根据该配置文件加载相应的动态库文件,以及调用相应的插件 函数;
[0143] 例如,该调用单元302可以包括确定子单元和调用子单元,如下:
[0144] 确定子单元,用于读取该配置文件中的守护进程任务,以确定当前需要执行的守 护进程任务。
[0145] 调用子单元,用于根据该当前需要执行的守护进程任务加载相应的动态库文件, 以及调用相应的插件函数。
[0146] 比如,该调用子单元,具体可以用于从该当前需要执行的守护进程任务中获取相 应的动态库文件的标识和插件函数的标识,根据该动态库文件的标识调用相应的动态库文 件,并加载该动态库文件,比如so文件,然后,根据该插件函数的标识从该动态库文件中调 用相应插件函数,等等。
[0147] 其中,动态库文件的标识可以包括动态库文件的名称或编号等可以识别出该动态 库文件的信息;而插件函数的标识则可以包括插件函数的名称或编号等可以识别出该插件 函数的信息。
[0148] (3)参数获取单元303;
[0149] 参数获取单元303,用于从该配置文件中获取与该插件函数相关的参数。
[0150] 其中,与该插件函数相关的参数可以包括数据存储相关的参数、用于区分该任务 是否为关键任务的参数、以及指示消息类型的参数等。
[0151] (4)执行单元 304;
[0152] 执行单元304,用于根据该参数执行该插件函数,以获取网络数据。
[0153] 例如,该执行单元304可以包括添加子单元和执行子单元,如下:
[0154] 添加子单元,用于将该参数按照顺序添加至参数列表中;
[0155] 执行子单元,用于根据该参数列表执行该插件函数,以获取网络数据。
[0156] 比如,执行子单元,具体可以用于将该参数列表中的参数依次输入至该插件函数 中,执行输入了参数的插件函数,以获取网络数据。
[0157] 在将参数输入插件函数之后,该执行子单元便可以利用输入了参数的插件函数调 用相应的外部接口,然后,通过该外部接口拉取原始网络数据,并对该原始网络数据进行数 据加工,得到网络数据。
[0158] 可选的,为了避免由于无法及时发现进程异常而导致的外网数据的时效性问题, 在数据加工失败时,还可以进行告警,即:
[0159] 执行子单元,还可以用于在数据加工失败时,生成第一失败提示信息,根据该第一 失败提示信息进行告警。
[0160] 可选的,在获取到网络数据之后,还可以将该网络数据写入预设存储空间,以进行 存储,即执行单元304还可以包括存储子单元,如下:
[0161]该存储子单元,用于将该网络数据写入预设存储空间,若写入失败,则生成第二失 败提示信息,根据该第二失败提示信息进行告警。
[0162]需说明的是,在生成第一失败提不彳目息或第二失败提不彳目息时,还可以在第一失 败提示信息或第二失败提示信息中携带相应的插件名称和/或函数名称,以便可以快速定 位发送异常的位置。
[0163] 可选的,为了避免由于无法及时发现进程死掉或者访问外部接口失败而导致的外 网数据的时效性问题,可以在每次触发守护进程的逻辑处理入口(比如在获取配置文件之 前)时,都进行一次特性信息的检测,即如图3b所示,该网络数据的获取装置还可以包括告 警单元306,如下:
[0164] 该告警单元306,可以用于获取守护进程的逻辑处理入口的特性信息,根据该特性 信息确定该守护进程发生异常时,生成告警信息。
[0165] 该告警单元306,还可以用于将该告警信息发送给预设的终端,比如相关维护人员 所属的终端,等等。
[0166] 其中,告警信息发送渠道可以包括邮件、短信、和/或社交平台或即时通信平台的 消息等。
[0167] 具体实施时,以上各个单元可以作为独立的实体来实现,也可以进行任意组合,作 为同一或若干个实体来实现,以上各个单元的具体实施可以参见前面的方法实施例,在此 不再赘述。
[0168] 该网络数据的获取装置具体可以集成在服务器,比如应用服务器中。
[0169] 由上可知,本实施例的网络数据的获取装置的文件获取单元301,可以定时获取配 置文件,然后由调用单元302根据该配置文件加载相应的动态库文件,以及调用相应的插件 函数,并由参数获取单元303从该配置文件中获取与该插件函数相关的参数,再然后,由执 行单元304根据这些参数执行该插件函数,以获取网络数据;由于该方案可以将在获取网络 数据过程中的一些逻辑处理操作以动态库文件和插件函数的方式来体现,因此,对于不同 模块共有的一些基础逻辑功能,如用户无关数据的获取等,只需共享同一动态库文件和插 件函数即可,而无需为每个模块均单独编写一套相应的完整代码,不仅实现更为简单,而且 也便于进行更新和功能扩展,比如,在进行功能拓展时,只需专注于该拓展功能的逻辑开 发,而无需关注其基础逻辑功能,等等,大大提高了其灵活性;进一步的,由于可以将实现相 同功能的代码进行共享,所以,可以减少大量重复的代码,减少资源的消耗。
[0170] 实施例四、
[0171] 相应的,本发明实施例还提供一种网络数据的获取系统,包括本发明实施例提供 的任一种网络数据的获取装置,具体可参见实施例三,例如,可以如下:
[0172] 网络数据的获取装置,用于根据该配置文件加载相应的动态库文件,以及调用相 应的插件函数;从该配置文件中获取与该插件函数相关的参数;根据该参数执行该插件函 数,以获取网络数据。
[0173] 该网络数据的获取装置,还可以用于获取守护进程的逻辑处理入口的特性信息, 根据该特性信息确定守护进程是否发生异常,若是,则生成告警信息;若否,则生成表示运 行正常的响应消息,或者,也可以不生成响应消息。
[0174] 此外,该网络数据的获取系统还可以包括其他的设备,比如终端,如下:
[0175] 终端,用于向网络数据的获取装置发送数据获取请求,并接收网络数据的获取装 置根据该数据获取请求返回的网络数据。
[0176] 以上各个设备的具体实施可参见前面的实施例,在此不再赘述。
[0177] 由于该网络数据的获取系统可以包括本发明实施例提供的任一种网络数据的获 取装置,因此,可以实现本发明实施例所提供的任一种网络数据的获取装置所能实现的有 效果。
[0178] 实施例五、
[0179] 本发明实施例还提供一种服务器,如图4所示,其示出了本发明实施例所涉及的服 务器的结构示意图,具体来讲:
[0180] 该服务器可以包括一个或者一个以上处理核心的处理器401、一个或一个以上计 算机可读存储介质的存储器402、射频(Radio Frequency,RF)电路403、电源404、输入单元 405、以及显示单元406等部件。本领域技术人员可以理解,图4中示出的服务器结构并不构 成对服务器的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部 件布置。其中:
[0181] 处理器401是该服务器的控制中心,利用各种接口和线路连接整个服务器的各个 部分,通过运行或执行存储在存储器402内的软件程序和/或模块,以及调用存储在存储器 402内的数据,执行服务器的各种功能和处理数据,从而对服务器进行整体监控。可选的,处 理器401可包括一个或多个处理核心;优选的,处理器401可集成应用处理器和调制解调处 理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要 处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器401中。
[0182] 存储器402可用于存储软件程序以及模块,处理器401通过运行存储在存储器402 的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器402可主要包括存储程 序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比 如声音播放功能、图像播放功能等)等;存储数据区可存储根据服务器的使用所创建的数据 等。此外,存储器402可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少 一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器402还可以包括 存储器控制器,以提供处理器401对存储器402的访问。
[0183] RF电路403可用于收发信息过程中,信号的接收和发送,特别地,将基站的下行信 息接收后,交由一个或者一个以上处理器401处理;另外,将涉及上行的数据发送给基站。通 常,RF电路403包括但不限于天线、至少一个放大器、调谐器、一个或多个振荡器、用户身份 模块(SIM)卡、收发信机、耦合器、低噪声放大器(LNA,Low Noise Amplifier)、双工器等。此 外,RF电路403还可以通过无线通信与网络和其他设备通信。所述无线通信可以使用任一通 信标准或协议,包括但不限于全球移动通讯系统(GSM,Global System of Mobile communication)、通用分组无线服务(GPRS,General Packet Radio Service)、码分多址 (CDMA,Code Division Multiple Access)、宽带码分多址(WCDMA,Wideband Code Division Multiple Access)、长期演进(LTE,Long Term Evolution)、电子邮件、短消息服 务(SMS,Short Messaging Service)等。
[0184] 服务器还包括给各个部件供电的电源404(比如电池),优选的,电源404可以通过 电源管理系统与处理器401逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功 耗管理等功能。电源404还可以包括一个或一个以上的直流或交流电源、再充电系统、电源 故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
[0185] 该服务器还可包括输入单元405,该输入单元405可用于接收输入的数字或字符信 息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输 入。具体地,在一个具体的实施例中,输入单元405可包括触敏表面以及其他输入设备。触敏 表面,也称为触摸显示屏或者触控板,可收集用户在其上或附近的触摸操作(比如用户使用 手指、触笔等任何适合的物体或附件在触敏表面上或在触敏表面附近的操作),并根据预先 设定的程式驱动相应的连接装置。可选的,触敏表面可包括触摸检测装置和触摸控制器两 个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传 送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再 送给处理器401,并能接收处理器401发来的命令并加以执行。此外,可以采用电阻式、电容 式、红外线以及表面声波等多种类型实现触敏表面。除了触敏表面,输入单元405还可以包 括其他输入设备。具体地,其他输入设备可以包括但不限于物理键盘、功能键(比如音量控 制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
[0186] 该服务器还可包括显示单元406,该显示单元406可用于显示由用户输入的信息或 提供给用户的信息以及服务器的各种图形用户接口,这些图形用户接口可以由图形、文本、 图标、视频和其任意组合来构成。显示单元406可包括显示面板,可选的,可以采用液晶显示 器(LCD,Liquid Crystal Display)、有机发光二极管(0LED,0rganic Light-Emitting Diode)等形式来配置显示面板。进一步的,触敏表面可覆盖显示面板,当触敏表面检测到在 其上或附近的触摸操作后,传送给处理器401以确定触摸事件的类型,随后处理器401根据 触摸事件的类型在显示面板上提供相应的视觉输出。虽然在图4中,触敏表面与显示面板是 作为两个独立的部件来实现输入和输入功能,但是在某些实施例中,可以将触敏表面与显 示面板集成而实现输入和输出功能。
[0187]尽管未示出,服务器还可以包括摄像头、蓝牙模块等,在此不再赘述。具体在本实 施例中,服务器中的处理器401会按照如下的指令,将一个或一个以上的应用程序的进程对 应的可执行文件加载到存储器402中,并由处理器401来运行存储在存储器402中的应用程 序,从而实现各种功能,如下:
[0188]定时获取配置文件;根据该配置文件加载相应的动态库文件,以及调用相应的插 件函数;从该配置文件中获取与该插件函数相关的参数;根据该参数执行该插件函数,以获 取网络数据。
[0189] 例如,该处理器401可以用于执行如下操作:
[0190] 将该参数按照顺序添加至参数列表中,然后,根据该参数列表执行该插件函数,以 获取网络数据;比如,可以将该参数列表中的参数依次输入至该插件函数中,利用输入了参 数的插件函数调用相应的外部接口,然后,通过该外部接口拉取原始网络数据,并对该原始 网络数据进行数据加工,得到网络数据,等等。
[0191] 可选的,为了避免由于无法及时发现进程异常而导致的外网数据的时效性问题, 在数据加工失败时,还可以进行告警,即该处理器401还可以用于执行如下操作:
[0192] 若数据加工失败,则生成第一失败提示信息,并根据该第一失败提示信息进行告 警。
[0193] 可选的,在获取到网络数据之后,还可以将该网络数据写入预设存储空间,以进行 存储,并在写入失败时,给予告警,即该处理器401还可以用于执行如下操作:
[0194] 若写入失败,则生成第二失败提示信息,比如生成字符串型的第二失败提示信息, 并根据该第二失败提示信息进行告警。
[0195] 可选的,为了便于可以及时获知进程状况,该处理器401还可以用于执行如下操 作:
[0196] 获取守护进程的逻辑处理入口的特性信息,根据该特性信息确定所述守护进程发 生异常时,生成告警信息。
[0197] 以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
[0198] 由上可知,本实施例的服务器可以获取配置文件,根据该配置文件加载相应的动 态库文件,以及调用相应的插件函数,并从该配置文件中获取与该插件函数相关的参数,然 后,根据这些参数执行该插件函数,以获取网络数据;由于该方案可以将在获取网络数据过 程中的一些逻辑处理操作以动态库文件和插件函数的方式来体现,因此,对于不同模块共 有的一些基础逻辑功能,如用户无关数据的获取等,只需共享同一动态库文件和插件函数 即可,而无需为每个模块均单独编写一套相应的完整代码,不仅实现更为简单,而且也便于 进行更新和功能扩展,比如,在进行功能拓展时,只需专注于该拓展功能的逻辑开发,而无 需关注其基础逻辑功能,等等,大大提高了其灵活性;进一步的,由于可以将实现相同功能 的代码进行共享,所以,可以减少大量重复的代码,减少资源的消耗。
[0199] 本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可 以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储 介质可以包括:只读存储器(R〇M,Read Only Memory)、随机存取记忆体(RAM,Random Access Memory)、磁盘或光盘等。
[0200] 以上对本发明实施例所提供的一种网络数据的获取方法、装置和系统进行了详细 介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明 只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的技术人员,依据本发明 的思想,在【具体实施方式】及应用范围上均会有改变之处,综上所述,本说明书内容不应理解 为对本发明的限制。
【主权项】
1. 一种网络数据的获取方法,其特征在于,包括: 定时获取配置文件; 根据所述配置文件加载相应的动态库文件,以及调用相应的插件函数; 从所述配置文件中获取与所述插件函数相关的参数; 根据所述参数执行所述插件函数,以获取网络数据。2. 根据权利要求1所述的方法,其特征在于,所述根据所述配置文件加载相应的动态库 文件,以及调用相应的插件函数包括: 读取所述配置文件中的守护进程任务,以确定当前需要执行的守护进程任务; 根据所述当前需要执行的守护进程任务加载相应的动态库文件,以及调用相应的插件 函数。3. 根据权利要求2所述的方法,其特征在于,所述根据所述当前需要执行的守护进程任 务加载相应的动态库文件,以及调用相应的插件函数,包括: 从所述当前需要执行的守护进程任务中获取相应的动态库文件的标识和插件函数的 标识; 根据所述动态库文件的标识调用相应的动态库文件,并加载所述动态库文件; 根据所述插件函数的标识从所述动态库文件中调用相应插件函数。4. 根据权利要求1至3任一项所述的方法,其特征在于,所述根据所述参数执行所述插 件函数,以获取网络数据,包括: 将所述参数按照顺序添加至参数列表中; 根据所述参数列表执行所述插件函数,以获取网络数据。5. 根据权利要求4所述的方法,其特征在于,所述根据所述参数列表执行所述插件函 数,以获取网络数据,包括: 将所述参数列表中的参数依次输入至所述插件函数中; 执行输入了参数的插件函数,以获取网络数据。6. 根据权利要求5所述的方法,其特征在于,所述执行输入了参数的插件函数,以获取 网络数据,包括: 利用输入了参数的插件函数调用相应的外部接口,并通过所述外部接口拉取原始网络 数据; 对所述原始网络数据进行数据加工,得到网络数据。7. 根据权利要求6所述的方法,其特征在于,所述对所述原始网络数据进行数据加工, 得到网络数据之后,还包括: 若数据加工失败,则生成第一失败提示信息,根据所述第一失败提示信息进行告警。8. 根据权利要求6所述的方法,其特征在于,所述对所述原始网络数据进行数据加工, 得到网络数据之后,还包括: 将所述网络数据写入预设存储空间; 若写入失败,则生成第二失败提示信息,根据所述第二失败提示信息进行告警。9. 根据权利要求1至3任一项所述的方法,其特征在于,所述定时获取配置文件之前,还 包括: 确定当前运行环境符合预设条件时,加载配置文件。10. 根据权利要求9所述的方法,其特征在于,所述加载配置文件之后,还包括: 确定配置文件的最后修改时间与上一次加载时的修改时间不一致时,重新加载所述配 置文件。11. 根据权利要求2所述的方法,其特征在于,还包括: 获取守护进程的逻辑处理入口的特性信息; 根据所述特性信息确定所述守护进程发送异常时,生成告警信息。12. -种网络数据的获取装置,其特征在于,包括: 文件获取单元,用于定时获取配置文件; 调用单元,用于根据所述配置文件加载相应的动态库文件,以及调用相应的插件函数; 参数获取单元,用于从所述配置文件中获取与所述插件函数相关的参数; 执行单元,用于根据所述参数执行所述插件函数,以获取网络数据。13. 根据权利要求12所述的装置,其特征在于,所述调用单元包括确定子单元和调用子 单元; 所述确定子单元,用于读取所述配置文件中的守护进程任务,以确定当前需要执行的 守护进程任务; 所述调用子单元,用于根据所述当前需要执行的守护进程任务加载相应的动态库文 件,以及调用相应的插件函数。14. 根据权利要求13所述的装置,其特征在于, 所述调用子单元,具体用于从所述当前需要执行的守护进程任务中获取相应的动态库 文件的标识和插件函数的标识;根据所述动态库文件的标识调用相应的动态库文件,并加 载所述动态库文件;根据所述插件函数的标识从所述动态库文件中调用相应插件函数。15. 根据权利要求12至14任一项所述的装置,其特征在于,所述执行单元包括添加子单 元和执行子单元; 所述添加子单元,用于将所述参数按照顺序添加至参数列表中; 所述执行子单元,用于根据所述参数列表执行所述插件函数,以获取网络数据。16. 根据权利要求15所述的装置,其特征在于, 所述执行子单元,具体用于将所述参数列表中的参数依次输入至所述插件函数中;执 行输入了参数的插件函数,以获取网络数据。17. 根据权利要求16所述的装置,其特征在于, 所述执行子单元,具体用于利用输入了参数的插件函数调用相应的外部接口,并通过 所述外部接口拉取原始网络数据;对所述原始网络数据进行数据加工,得到网络数据。18. 根据权利要求17所述的装置,其特征在于, 所述执行子单元,还用于在数据加工失败时,生成第一失败提示信息,根据所述第一失 败提示信息进行告警。19. 根据权利要求17所述的装置,其特征在于,所述执行单元还包括存储子单元; 所述存储子单元,用于将所述网络数据写入预设存储空间,若写入失败,则生成第二失 败提示信息,根据所述第二失败提示信息进行告警。20. 根据权利要求12至14任一项所述的装置,其特征在于,还包括加载单元; 所述加载单元,用于确定当前运行环境符合预设条件时,加载配置文件。21. 根据权利要求20所述的装置,其特征在于, 所述加载单元,还用于在加载了配置文件之后,若确定配置文件的最后修改时间与上 一次加载时的修改时间不一致时,则重新加载所述配置文件。22. 根据权利要求13所述的装置,其特征在于,还包括告警单元; 所述告警单元,用于获取守护进程的逻辑处理入口的特性信息,根据所述特性信息确 定所述守护进程发生异常时,生成告警信息。23. -种网络数据的获取系统,其特征在于,包括权利要求12至22所述的任一种网络数 据的获取装置。
【文档编号】H04L29/08GK105847446SQ201610380227
【公开日】2016年8月10日
【申请日】2016年5月31日
【发明人】林欣烁, 蔡晓鹏, 许泽伟
【申请人】腾讯科技(深圳)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1