首页> 中国专利> 支持极限网络环境的移动作业系统工作平台

支持极限网络环境的移动作业系统工作平台

摘要

本发明提出支持极限网络环境的移动作业系统工作平台,包括:服务器引擎和客户端引擎;服务器引擎,用于监听服务器中新建移动作业的事件,获取移动作业描述文件;根据描述文件获取需要的移动作业页面,将其渲染得到预渲染页面;接收录制的脚本,回放录制的脚本,向服务器上传提交页面的请求;描述文件包括:移动作业类型、各个移动作业类型包含的移动作业页面和存储移动作业的数据表;客户端引擎,用于缓存预渲染页面,拦截下载页面的请求以及提交页面的请求;将下载页面的请求重定向到预渲染页面;将提交页面的请求录制为脚本;直至网络连接正常时,将录制的脚本上传到服务器引擎。可以保证移动作业系统可靠、正常地工作。

著录项

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2015-08-12

    授权

    授权

  • 2015-05-20

    著录事项变更 IPC(主分类):H04L29/08 变更前: 变更后: 申请日:20121211

    著录事项变更

  • 2013-05-15

    实质审查的生效 IPC(主分类):H04L29/08 申请日:20121211

    实质审查的生效

  • 2013-04-17

    公开

    公开

说明书

技术领域

本发明涉及计算机数据传输领域,特别是涉及支持极限网络环境的移动作 业系统工作平台。

背景技术

资产密集型企业(电力、石油、煤矿等)的设备故障,不仅对经济效益带来 直接影响,还可能造成潜在的安全事故和人身伤害。近年来,随着IT技术的发 展,移动作业系统逐步得到推广和使用,以确保在设备巡检和点检过程中,管 理规程真正有效地落地实施,杜绝漏检、错检,预防设备事故。

移动作业系统是采用最新移动技术、面向设备巡检、点检、生产操作、安全 环保等设备现场管理的信息化系统。相比于传统的纸质作业方式,移动作业具 有电子化、信息化、规范化和智能化的特点,可以最大限度提升工作计划的规 范化管理,提高作业现场的安全保障和现场作业的质量,同时让企业实时了解 现场工作情况。

为了保障现场工作顺利进行,工作人员必须第一时间获得作业信息,赶赴 现场,在最短时间内依据指示完成作业,并回传现场工作情况。这种移动作业 工作模式对工作现场的网络覆盖情况提出了很高的要求,需要全天候无间断平 稳流畅的网络信号。然而,各种恶劣的自然环境或灾害因素都会导致网络环境 的缺失或不稳定。比如,在偏远山区,网络并未覆盖或者信号微弱,但高压输 电线和电塔等往往分布在这些地区,使得作业人员必须在恶劣网络环境下作业; 再比如,由雷击火灾等自然灾害引发的抢险排险作业,网络往往被迫中断无法 即时恢复,而作业任务并不能因此而延误。

如何在这种极限网络环境下保证移动作业系统能正常工作就成为一个重要 挑战。现有方法中,提出了一种将遗留系统转化为支持离线工作的框架,该方 案根据用户使用习惯缓存页面,并缓存离线情况下用户输入的数据,连线后再 与数据库进行同步。

但由于客户端数据采用HTML DOM和Java Script等技术,而服务器采用 Java等技术,它们之间的数据格式并不相同,在数据同步过程中难免遇到格式 不一致问题,容易出错,可靠性不高。

发明内容

本发明的目的在于提出支持极限网络环境的移动作业系统工作平台,可以在 极限网络环境下保证移动作业系统可靠、正常地工作。

采用的方案是:

支持极限网络环境的移动作业系统工作平台,包括:服务器引擎和客户端引 擎;

其中,所述服务器引擎,用于监听服务器中新建移动作业的事件,获取移动 作业描述文件;根据所述移动作业描述文件获取需要的移动作业页面,将所述 需要的移动作业页面进行渲染得到预渲染页面;以及,接收所述客户端引擎上 传的所述录制的脚本,回放所述录制的脚本,向所述服务器上传所述提交页面 的请求;所述描述文件包括:移动作业类型、各个移动作业类型包含的移动作 业页面和存储移动作业的数据表;所述移动作业页面包括:页面名称、页面地 址、页面类型和页面序号;所述页面类型包括指导性页面、表单性页面以及说 明性页面;

所述客户端引擎,用于缓存所述预渲染页面,拦截向服务器发出的下载页面 的请求以及提交页面的请求;将所述下载页面的请求重定向到所述预渲染页面; 将所述提交页面的请求录制为脚本;直至网络连接正常时,将录制的脚本上传 到所述服务器引擎。

本发明将服务器引擎安装在移动作业系统服务器端,将客户端引擎安装在移 动作业系统客户端;通过服务器引擎进行移动作业页面的预取,以及预先渲染 获取的移动作业页面;利用客户端引擎将预先渲染的移动作业页面缓存,截取 在客户端输入的下载页面请求,根据下载页面的请求重定向到缓存的预渲染页 面;使得用户可以在离线状态下也能正常使用移动作业系统;用户在对应页面 操作完成时,产生提交页面的请求;客户端引擎将提交页面的请求录制成脚本; 当客户端引擎与服务器引擎网络连通时,将录制的脚本提交到服务器引擎,由 服务器引擎将录制的脚本回放,重新向移动作业系统服务器提交页面;利用日 志回放的形式可以避免移动作业系统在离线工作时,出现的客户端与服务器端 数据格式是不一致的问题,可以在极限网络环境下保证移动作业系统可靠、正 常地工作。

附图说明

图1为本发明的一个结构示意图;

图2为本发明中服务器引擎的一个结构示意图;

图3为本发明中客户端引擎的一个结构示意图;

图4为本发明中服务器引擎的另一个结构示意图;

图5为本发明中客户端引擎的另一个结构示意图。

具体实施方式

下面结合附图对本发明进行说明。

本发明提出支持极限网络环境的移动作业系统工作平台,其中一个结构示 意图请参考图1,包括:服务器引擎和客户端引擎;

服务器引擎可通过插件的形式安装在移动作业系统服务器侧;客户端引擎 也可以插件的形式安装在移动作业系统客户端侧;服务器引擎和客户端引擎之 间可以进行有线或者无线的通信;

其中,服务器引擎,用于监听服务器中新建移动作业的事件,获取移动作 业描述文件;根据移动作业描述文件获取需要的移动作业页面,将需要的移动 作业页面进行渲染得到预渲染页面;以及,接收客户端引擎上传的录制的脚本, 回放录制的脚本,向服务器上传提交页面的请求;描述文件包括:移动作业类 型、各个移动作业类型包含的移动作业页面和存储移动作业的数据表;移动作 业页面包括:页面名称、页面地址、页面类型和页面序号;页面类型包括指导 性页面、表单性页面以及说明性页面;

客户端引擎,用于缓存预渲染页面,拦截向服务器发出的下载页面的请求 以及提交页面的请求;将下载页面的请求重定向到预渲染页面;将提交页面的 请求录制为脚本;直至网络连接正常时,将录制的脚本上传到服务器引擎。

本发明将服务器引擎安装在移动作业系统服务器端,将客户端引擎安装在 移动作业系统客户端;通过服务器引擎进行移动作业页面的预取,以及预先渲 染获取的移动作业页面;利用客户端引擎将预先渲染的移动作业页面缓存,截 取在客户端输入的下载页面请求,根据下载页面的请求重定向到缓存的预渲染 页面;使得用户可以在离线状态下也能正常使用移动作业系统;用户在对应页 面操作完成时,产生提交页面的请求;客户端引擎将提交页面的请求录制成脚 本;当客户端引擎与服务器引擎网络连通时,将录制的脚本提交到服务器引擎, 由服务器引擎将录制的脚本回放,重新向移动作业系统服务器提交页面;利用 日志回放的形式可以避免移动作业系统在离线工作时,出现的客户端与服务器 端数据格式是不一致的问题,可以在极限网络环境下保证移动作业系统可靠、 正常地工作。

具体来说,服务器引擎的一个具体结构示意图,请参考图2,包括:数据库 事件监听器、作业载入器、渲染引擎、回放引擎和第一通信模块;

其中,作业载入器,用于监听服务器中新建移动作业的事件,获取移动作 业描述文件;

其中描述文件由系统管理员提供,其中描述文件的格式可参考下表:

然后根据移动作业描述文件获取移动作业页面;移动作业页面包括:页面 名称、页面地址、页面类型和页面序号;

页面类型包括指导性页面、表单性页面以及说明性页面;说明性页面,用 于说明作业内容、地点、任务、完成时间和要求等;表单性页面,即作业过程 中需要填写的表单,包括处理人、处理方法、处理时间等;指导性页面,包括 历史事件、处理建议等。一般来说,需要的移动作业页面包括:说明性页面和 表单性页面;另外,需要的移动作业页面包括还可以根据各移动页面的访问概 率来确定;例如,可以根据访问概率来选择指导性页面作为需要的移动作业页 面的一部分。

根据访问概率来选择指导性页面作为需要的移动作业页面的一部分的步骤 可根据聚类算法来确定;具体的,采用用户访问行为图(Daniel A. Menascb,Virgilio A.F.Almeida.A Methodology for Workload Characterization of E-commerce Sites.In Proceedings of the 1st ACM conference on Electronic commerce,1999,pp:119-128.)进行聚类分析。分析需要使用系统历史访问日志, 历史日志中出现,但是并未在作业描述文件中申明的则认为是指导性页面。我 们按作业类型对用户访问系统的行为进行聚类(K-means)算法。但在本发明中, 同一个作业的必须页面归并为一个点,必须页面指的是说明性页面和表单性页 面;对于其它指导性页面,每个页面表示为一个点,其它计算方法与上述方法 一致。假定系统具有K个作业类型,那么聚类时K个中心点则设定为这K个作 业。然后,通过计算指导性页面与中心点的距离进行聚类。最后,统计每个指 导性页面的访问率,按访问率排序,排名靠前的页面将被缓存,默认我们取前 十个页面。

数据库事件监听器,用于监听数据表;数据表包括:数据表名、数据库类 型、作业ID、操作员ID和移动作业类型;

当数据表有变化时,生成移动作业页面的渲染临时表;渲染临时表包括: 移动作业类型、移动作业ID、操作员ID、渲染状态、渲染结果以及缓存标志; 渲染状态包括未渲染、渲染中以及渲染完成;缓存标志用于记录该作业的渲染 结果是否在客户端已经缓存。

渲染引擎,用于周期访问渲染临时表,将渲染状态为未渲染的移动作业页 面进行渲染得到预渲染页面,将预渲染页面采用本文格式保存在渲染结果中, 更新当前移动作业页面的渲染状态为渲染完成;

具体的,当渲染引擎将渲染状态为未渲染的移动作业页面进行渲染时,提 取渲染状态为未渲染的移动作业页面;模拟用户登录服务器,若当前用户有移 动作业页面需要渲染,则提取当前用户名下的移动页面进行渲染,将预渲染页 面保存在渲染结果中,更新当前移动作业页面的渲染状态为渲染完成。

其中,保存渲染结果时采用的文本格式可参考下表:

每个移动作业都有若干的页面需要渲染。因为移动作业与操作员相关,所 以渲染过程中需要预先用户登录。本发明采用线程池的方式批量渲染作业,每 个作业对应一个线程,每个线程中都会模拟用户登录的会话信息。

第一通信模块,用于与客户端引擎进行网络通信,负责服务器引擎与客户 端引擎间的所有网络通信;

回放引擎,用于回放客户端引擎录制的脚本,向服务器上传提交页面的请 求。具体的,回放引擎模拟用户登录服务器,按脚本的录制顺序向服务器提交 所有提交页面的请求。

请参考图3,客户端引擎包括:本地缓存器、消息拦截器、重定向管理器、 脚本录制器、网络监控器和第二通信模块;

其中,本地缓存器,用于采用文本格式缓存预渲染页面,文本格式与渲染 结果中一致;以及通知数据库事件监听器将对应的移动作业页面的缓存标志更 新为已缓存;

消息拦截器,用于拦截向服务器发出的下载页面的请求和提交页面的请求;

重定向管理器,用于将下载页面的请求重定向到本地缓存器中的预渲染页 面;重定向时,根据预渲染页面的页面地址进行;

脚本录制器,用于将所有提交页面的请求按顺序录制为脚本;

网络监控器,用于监控第一通信模块与第二通信模块之间的网络连接情况;

第二通信模块,用于当与第一通信模块连通时,将录制的脚本上传到第一 通信模块。

另外为了提高本发明的实时性,可在客户端引擎加设作业状态查询器;在 服务器引擎加设作业状态管理器;具体可参见图4和图5;

其中,作业状态管理器,用于监听渲染临时表;获取渲染临时表中的渲染 状态,可以知道是否有新的预渲染页面;

当第一通信模块与第二通信模块连通时,作业状态查询器向作业状态管理 器轮询是否新的预渲染页面,若是,则将其下载到本地缓存器,否则继续等待。

另外,本发明也适用于客户端引擎与服务器引擎通信正常的情况,当第一 通信模块与第二通信模块连接正常时,第二通信模块将下载页面的请求发送服 务器;当第一通信模块与第二通信模块连接中断时,重定向管理器将下载页面 的请求重定向到本地缓存器中的预渲染页面。由此,可实现移动作业系统的在 线和离线的无缝切换应用。

本发明的其中一个工作流程如下:

1、在服务器引擎上,启动时,读取移动作业的描述文件,启动初始化流程, 具体如下:

a)读取移动作业的必须页面集合和数据表信息;

b)启动指导性页面的分析,具体过程如下:

i.利用页面的前驱关系,构造出页面调用的拓扑结构,然后利用拓 扑排序算法计算出页面序号;前驱页面用于指定当前页面的上一 页;

ii.利用用户行为图(CBMG)和K-means算法,以作业必须页面集合为 中心,计算与作业相关的最高访问频率的指导性页面;

iii.启动一个守护进程,以较长的周期更新指导性页面访问频率的分 析结果,周期可以是天、周或日,视具体应用的使用与更新频率 而定,默认以周为周期更新。

c)创建临时渲染表(TaskNotifier)。

2)在服务器引擎上,监听作业发布情况,有新的移动作业时做如下处理:

a)按移动作业描述文件中定义的格式,从数据库中读取作业相关信息

b)在临时渲染表(TaskNotifier)中插入新作业信息,并记录渲染状态为 “未渲染”。

3)在服务器引擎上,周期性访问临时渲染表(TaskNotifier),发现新作 业信息时,执行如下操作:

4)读取移动作业的必须页面和指导性页面,标记TaskNotifier中的必须 页面的渲染状态为“渲染中”;

5)创建线程,调用UserFactory接口的实现,模拟用户登录;

6)生成伪装客户,向服务器发出请求,接收返回结果,并缓存所有必须 页面和指导性页面渲染出的结果,即是预渲染页面;

7)标记TaskNotifier中的渲染状态为“渲染完成”。

8)在客户端引擎上,作业状态查询模块周期性向服务器引擎上的作业状 态管理模块发出请求,具体过程如下:

a)客户端引擎上:

i.作业查询模块在用户当前会话的状态下向服务器引擎发起请求, 询问当前用户是否有移动作业到达;

ii.如果是,则保存到本地缓存,否则继续第4)步。

b)服务器引擎上:

i.接收到客户端引擎请求后,作业状态管理模块调用 CurrentUserSnooper接口的实现,获取当前登录用户ID;

ii  如果未查询到当前登录用户有作业或作业尚未渲染完成,则返回 空;

iii.如果查询到当前登录用户有作业且作业渲染完成,则回传渲染结 果,并通知作业状态管理模块更新TaskNotifier的已缓存标志为 “已缓存”。

9)作业操作员前往作业地点。

10)在客户端引擎上,截取用户下载页面的请求和提交页面的请求;对于 刚开始登陆的用户来说,截取的是下载页面的请求;对于已经获取到对 应移动作业页面的用户来说,截取的是提交页面的请求;网络监控器监 测网络连接状态,如果连接正常转入第7)步,如果连接不正常则转入第 8)步。

11)在客户端引擎上,移动作业系统处于在线工作状态,用户提交页面时 做如下判断:

a)监测网络连接,如果此时断网,转入第8)步;

b)若网络连接正常,则在线提交页面;

c)如果作业还有后续页面则继续第7)步,若作业完成则转入第11)步。

12)在客户端引擎上,移动作业系统处于离线工作状态,具体过程如下:

a)重定向管理器将所有下载页面的请求重定向到本地缓存;

b)脚本录制器将每个提交页面的请求录制成脚本,直到当前作业所有内 容提交完成。

13)在客户端引擎上,网络监控器继续监测网络状态,具体操作如下:

a)如果未连通,则继续第9)步;

b)如果连通,则回传离线时录制的所有作业提交的HTTP请求到回放引 擎。

14)在服务器引擎上,回放引擎负责回放所有录制的脚本,将各个提交页 面的请求逐个向移动作业系统服务器提交,完成数据的回填,具体如下:

a)创建线程,调用UserFactory接口,模拟用户登录;

b)生成伪装客户,向服务器逐条提交录制的提交页面的请求。

如果系统关闭则退出系统,否则转入第2)步。

利用本发明,具有如下优点:

1、无需操作员参与,即可在有网络和无网络状态间无缝切换;

2、准确缓存业务必须页面,保证业务正常进行;

3、支持离线浏览重要指导性页面,为操作员提供更全面信息;

4、通过录制和回放操作回传录入数据,避免直接同步数据时的格式不一致 问题。

以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细, 但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域 的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和 改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附 权利要求为准。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号