CN115102938B - 基于http协议的多人并发文件生成动态信息推送方法及系统 - Google Patents
基于http协议的多人并发文件生成动态信息推送方法及系统 Download PDFInfo
- Publication number
- CN115102938B CN115102938B CN202210530624.9A CN202210530624A CN115102938B CN 115102938 B CN115102938 B CN 115102938B CN 202210530624 A CN202210530624 A CN 202210530624A CN 115102938 B CN115102938 B CN 115102938B
- Authority
- CN
- China
- Prior art keywords
- information
- task
- session
- file
- file generation
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 127
- 230000008569 process Effects 0.000 claims abstract description 107
- 238000012552 review Methods 0.000 claims abstract description 85
- 238000012545 processing Methods 0.000 claims description 13
- 230000004044 response Effects 0.000 claims description 5
- 230000009471 action Effects 0.000 claims description 4
- 238000004806 packaging method and process Methods 0.000 claims description 4
- 230000000875 corresponding effect Effects 0.000 description 10
- 230000003993 interaction Effects 0.000 description 6
- 230000001276 controlling effect Effects 0.000 description 5
- 238000012544 monitoring process Methods 0.000 description 5
- 230000002452 interceptive effect Effects 0.000 description 4
- 230000006870 function Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/16—Arrangements for providing special services to substations
- H04L12/18—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
- H04L12/1813—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast for computer conferences, e.g. chat rooms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- General Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了基于HTTP协议的多人并发文件生成动态信息推送方法及系统,对最终评审文件生成任务执行过程进行管控,解决生成过程动态信息实时推送到终端用户;实现多人同时启动同一个最终评审文件生成任务的时候,是相互共享的;文件生成过程中的动态信息实时展示在任务管理界面中;文件生成过程中可以终止文件生成任务;多人同时并发启动相同任务,会自动合并为同一任务,并实现多人的文件生成过程实时动态信息,文件生成结果共享;文件生成过程中,他人进入到该任务的管理界面并启动任务,也能分享到当前文件生成任务的完整实时动态信息以及文件生成结果;文件生成后自动弹出是否在线浏览对话框,同意后直接在线打开;在管理界面自动生成文件下载链接。
Description
技术领域
本发明属于计算机领域,具体涉及基于HTTP协议的多人并发文件生成动态信息推送方法及系统。
背景技术
在项目管理领域中,文档编写质量通常是采用文档在线评审的方式进行管控。被评审文档通常比较件零散且不好统一管理,尤其发生变更时的基线、版本管理更容易混乱。因此将批量零散被评审文件合并为一个最终评审文件进行评审能大大简化评审管理工作,保持评审文件的版本一致。但是最终评审文件的自动合并生成是一个业务逻辑复杂,过程步骤繁多,耗时很长的自动执行过程。整个执行过程中,终端用户不能够对过程进度、执行状态进行实时监控,也不能对长时间的执行过程进行互动和控制,多用户之间不能相互共享任务,造成资源的严重浪费甚至造成资源冲突。最终评审文件生成后不能第一时间通知用户,通过在线浏览的方式展示生成结果文档。
主要表现出以下一些实际问题:
用户不知道最终评审生成过程中目前是在文件下载,文件合并,文件基本封面设置,确定评审专家的哪个环节;
一旦最终评审文件生成任务启动后,整个执行过程比较封闭,缺少与用户的互动,用户对执行过程缺乏有效的控制手段;
不能实时的展示最终评审文件生成过程的动态信息,不便于即刻了解自动文件生成任务的执行进度和状态;
在网络环境中,多人同时执行同一个最终评审文件生成任务的时候会产生冲突,不能实现执行任务共享;
在最终评审文件生成成功后不能第一时间主动通知到终端用户,不能直接通过在线浏览的方式将最终评审文件展示出来。
一些作业调度软件具有作业执行进度、执行状态的监控功能,但不具备任务共享,任务结果数据第一时间主动通知,主动在线展示的功能。作业执行结果往往需要用户不断刷新页面以询问执行结果,结果的推送比较被动。
发明内容
本发明的目的在于克服背景技术中存在的技术问题,目的在于提供了基于HTTP协议的多人并发文件生成动态信息推送方法及系统,对最终评审文件生成任务执行过程进行管控,解决生成过程动态信息实时推送到终端用户;实现多人同时启动同一个最终评审文件生成任务的时候,不是相互隔离,而是相互共享;执行过程中可实现与终端用户的互动;可在最终评审文件生成成功后第一时间主动通知到终端用户,可通过在线浏览的方式将最终评审文件展示出来。
为了解决技术问题,本发明的技术方案是:
基于HTTP协议的多人并发文件生成动态信息推送方法,所述方法包括:
S1:初始化会话管理器,对输入的会话信息进行识别分组,得到会话分组信息;
S2:获取所述会话分组信息,判断该分组下是否存在正在执行的文件生成程序,若存在,进行组内共享;若不存在,重启一个文件生成程序,并进行组内共享;
S3:调用会话管理器,根据评审流程ID获取执行任务进程,将执行任务进程封装为输入流,并读取文件生成过程的实时动态信息;
S4:将获取到的实时动态信息进行多人共享,并将实时动态信息推送给所有终端用户。
对最终评审文件生成任务执行过程进行管控,解决生成过程动态信息实时推送到终端用户;实现多人同时启动同一个最终评审文件生成任务的时候,不是相互隔离,而是相互共享;执行过程中可实现与终端用户的互动;可在最终评审文件生成成功后第一时间主动通知到终端用户,可通过在线浏览的方式将最终评审文件展示出来。
进一步,其特征在于,所述步骤S1具体包括:
获取会话管理器,如果获取失败,则初始化一个会话管理器实例,所述会话管理器采用单例模式进行设计;根据参入评审流程ID查询会话管理器中相关联的会话分组信息及分组中的当前会话信息;如果对应的会话分组信息不存在,则初始化一个会话分组实例,如果存在则直接获取使用,并将所述当前会话信息添加到该会话分组中。
进一步,其特征在于,所述步骤S2具体包括:
S21:调用会话管理器;
S22:获取会话管理器中所有正在执行的任务清单;
S23:用当前任务接收到的评审流程ID与步骤S22获取到的任务清单进行比对,如果存在则进入到步骤S26进行处理,如果不存在则进入到步骤S24进行处理;
S24:根据系统配置参数查找到文件生成程序位置,启动参数信息,动态拼接程序启动命令并启动,获取文件生成程序进程对象;
S25:将步骤S24获取的文件生成程序进程对象保存至步骤S21中获取到的会话管理器中,以评审流程ID作为钥匙;
S26:维护步骤S22中所有正在执行的任务清单;
S27:根据所述任务保持的评审流程ID从步骤S21的会话管理器中获取相关联的会话分组信息;
S28:从步骤S27获取到的会话分组信息中获取历史已经发送过的执行过程信息,重新发送一遍至本会话终端,即多用户并发的任务信息共享;如果本次是首次启动任务,则重新发送的执行过程信息为空;如果不是首次启动,存在其他终端用户启动过,则将之前的执行过程信息给本会话终端重新发送一次。
进一步,其特征在于,所述步骤S3具体包括:
S31:调用会话管理器;
S32:根据评审流程ID从步骤S31获取的会话管理器中获取保存的任务进程信息;
S33:从步骤S32获取的任务进程信息中,获取其输入流和错误流对象,从中读取文件生成过程中的实时打印信息,以及错误信息。
进一步,其特征在于,所述步骤S4具体包括:
S41:调用会话管理器;
S42:根据评审流程ID从步骤S41获取的会话管理器中获取会话组信息;
S43:循环处理步骤S42获取的会话组信息内的所有会话信息,将S3获取的文件生成过程的实时动态信息给所有组内会话终端推送一遍;
S44:将步骤S43推送过的实时动态信息保存在步骤S42获取的会话组信息中,供步骤S28重新发送执行过程信息使用。
进一步,其特征在于,所述方法还包括:
S51:接收所有来自用户或者来自服务器端的指令;
S52:根据从步骤S51接收到的指令,启动相应的指令响应动作。
进一步,其特征在于,所述来自用户或者来自服务器端的指令包括:
taskCancel:进入步骤S53终止文件生成;
autoOpenFile:进入步骤S54文件在线浏览;
fileinfo:进入步骤S55文件下载链接自动生成;
S53:无视任务执行状态,直接进入到结束文件生成任务中,结束文件生成任务;
S54:自动下载结果文件,弹出文件在线浏览界面,以及时提醒终端用户;
S55:进一步获取文件的详细信息,生成新的展示界面,提供文件的下载链接。
进一步,所述结束文件生成任务包括以下步骤:
S61:从会话管理器中根据评审流程ID获取文件生成程序进程对象,并结束该进程对象。;
S62:从会话管理器中根据评审流程ID获取会话组信息,并将该会话组信息进行删除、清空;
S63:从会话管理器中根据评审流程ID获取所有正在执行的任务清单,并将该正在执行的任务清单中的任务进行删除、清空。
基于HTTP协议的多人并发文件生成动态信息推送系统,所述系统包括:
一个或多个处理器;
存储器,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器执行上述任一所述的基于HTTP协议的多人并发文件生成动态信息推送方法。
与现有技术相比,本发明的优点在于:
基于HTTP协议的多人并发文件生成动态信息推送方法及系统,对最终评审文件生成任务执行过程进行管控,解决生成过程动态信息实时推送到终端用户;实现多人同时启动同一个最终评审文件生成任务的时候,不是相互隔离,而是相互共享;文件生成过程中的动态信息实时展示在任务管理界面中;文件生成过程中可以终止文件生成任务;多人同时并发启动相同任务,会自动合并为同一任务,并实现多人的文件生成过程实时动态信息,文件生成结果共享;文件生成过程中,其他人进入到该任务的管理界面并启动任务,也能分享到当前文件生成任务的完整实时动态信息以及文件生成结果;文件生成后自动弹出是否在线浏览对话框,同意后直接在线打开;在管理界面自动生成文件下载链接。
附图说明
图1、一种基于HTTP协议的多人并发文件生成动态信息推送算法主流程图;
图2、启动文件生成任务主流程图;
图3、初始化会话信息主流程图;
图4、多人并发任务共享的主流程图;
图5、作业执行信息展示的主流程图;
图6、读取文件生成实时动态信息的主流程图;
图7、多人共享信息的主流程图;
图8、监听交互命令的主流程图;
图9、结束文件生成任务的主流程图。
具体实施方式
下面结合实施例描述本发明具体实施方式:
需要说明的是,本说明书所示意的结构、比例、大小等,均仅用以配合说明书所揭示的内容,以供熟悉此技术的人士了解与阅读,并非用以限定本发明可实施的限定条件,任何结构的修饰、比例关系的改变或大小的调整,在不影响本发明所能产生的功效及所能达成的目的下,均应仍落在本发明所揭示的技术内容能涵盖的范围内。
同时,本说明书中所引用的如“上”、“下”、“左”、“右”、“中间”及“一”等的用语,亦仅为便于叙述的明了,而非用以限定本发明可实施的范围,其相对关系的改变或调整,在无实质变更技术内容下,当亦视为本发明可实施的范畴。
实施例一:
基于HTTP协议的多人并发文件生成动态信息推送方法,所述方法包括:
S1:初始化会话管理器,对输入的会话信息进行识别分组,得到会话分组信息;
S2:获取所述会话分组信息,判断该分组下是否存在正在执行的文件生成程序,若存在,进行组内共享;若不存在,重启一个文件生成程序,并进行组内共享;
S3:调用会话管理器,根据评审流程ID获取执行任务进程,将执行任务进程封装为输入流,并读取文件生成过程的实时动态信息;
S4:将获取到的实时动态信息进行多人共享,并将实时动态信息推送给所有终端用户。
对最终评审文件生成任务执行过程进行管控,解决生成过程动态信息实时推送到终端用户;实现多人同时启动同一个最终评审文件生成任务的时候,不是相互隔离,而是相互共享;执行过程中可实现与终端用户的互动;可在最终评审文件生成成功后第一时间主动通知到终端用户,可通过在线浏览的方式将最终评审文件展示出来。
进一步,其特征在于,所述步骤S1具体包括:
获取会话管理器,如果获取失败,则初始化一个会话管理器实例,所述会话管理器采用单例模式进行设计;根据参入评审流程ID查询会话管理器中相关联的会话分组信息及分组中的当前会话信息;如果对应的会话分组信息不存在,则初始化一个会话分组实例,如果存在则直接获取使用,并将所述当前会话信息添加到该会话分组中。
进一步,其特征在于,所述步骤S2具体包括:
S21:调用会话管理器;
S22:获取会话管理器中所有正在执行的任务清单;
S23:用当前任务接收到的评审流程ID与步骤S22获取到的任务清单进行比对,如果存在则进入到步骤S26进行处理,如果不存在则进入到步骤S24进行处理;
S24:根据系统配置参数查找到文件生成程序位置,启动参数信息,动态拼接程序启动命令并启动,获取文件生成程序进程对象;
S25:将步骤S24获取的文件生成程序进程对象保存至步骤S21中获取到的会话管理器中,以评审流程ID作为钥匙;
S26:维护步骤S22中所有正在执行的任务清单;
S27:根据所述任务保持的评审流程ID从步骤S21的会话管理器中获取相关联的会话分组信息;
S28:从步骤S27获取到的会话分组信息中获取历史已经发送过的执行过程信息,重新发送一遍至本会话终端,即多用户并发的任务信息共享;如果本次是首次启动任务,则重新发送的执行过程信息为空;如果不是首次启动,存在其他终端用户启动过,则将之前的执行过程信息给本会话终端重新发送一次。
进一步,其特征在于,所述步骤S3具体包括:
S31:调用会话管理器;
S32:根据评审流程ID从步骤S31获取的会话管理器中获取保存的任务进程信息;
S33:从步骤S32获取的任务进程信息中,获取其输入流和错误流对象,从中读取文件生成过程中的实时打印信息,以及错误信息。
进一步,其特征在于,所述步骤S4具体包括:
S41:调用会话管理器;
S42:根据评审流程ID从步骤S41获取的会话管理器中获取会话组信息;
S43:循环处理步骤S42获取的会话组信息内的所有会话信息,将S3获取的文件生成过程的实时动态信息给所有组内会话终端推送一遍;
S44:将步骤S43推送过的实时动态信息保存在步骤S42获取的会话组信息中,供步骤S28重新发送执行过程信息使用。
进一步,其特征在于,所述方法还包括:
S51:接收所有来自用户或者来自服务器端的指令;
S52:根据从步骤S51接收到的指令,启动相应的指令响应动作。
进一步,其特征在于,所述来自用户或者来自服务器端的指令包括:
taskCancel:进入步骤S53终止文件生成;
autoOpenFile:进入步骤S54文件在线浏览;
fileinfo:进入步骤S55文件下载链接自动生成;
S53:无视任务执行状态,直接进入到结束文件生成任务中,结束文件生成任务;
S54:自动下载结果文件,弹出文件在线浏览界面,以及时提醒终端用户;
S55:进一步获取文件的详细信息,生成新的展示界面,提供文件的下载链接。
进一步,所述结束文件生成任务包括以下步骤:
S61:从会话管理器中根据评审流程ID获取文件生成程序进程对象,并结束该进程对象;
S62:从会话管理器中根据评审流程ID获取会话组信息,并将该会话组信息进行删除、清空;
S63:从会话管理器中根据评审流程ID获取所有正在执行的任务清单,并将该正在执行的任务清单中的任务进行删除、清空。
基于HTTP协议的多人并发文件生成动态信息推送系统,所述系统包括:
一个或多个处理器;
存储器,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器执行上述任一所述的基于HTTP协议的多人并发文件生成动态信息推送方法。
实施例二:
一种基于HTTP协议的多人并发文件生成动态信息推送算法主流程如图1所示,包含如下步骤:
1.启动文件生成任务
启动一个文件生成任务,传递一个评审流程业务ID,同一个评审流程ID下的文件生成任务被认为是相同业务,多人并发启动相同业务的文件生成任务的时候相互应该任务共享。
2.作业执行信息展示
将作业执行过程中产生的动态信息反馈到前端展示界面进行展示,多人任务共享的时候前端看到的执行动态信息应该同步。
3.监听交互命令
监听交互命令,执行相应的动作响应命令。目前设计的交互命令包括:
1)taskCancel:终止文件生成任务;
2)autoOpenFile:文件自动打开在线浏览命令;
3)fileinfo:接收文件相关信息,并自动生成文件查看、下载链接;
4.结束文件生成任务
结束文件生成任务,关闭交互链接,清除任务会话管理信息;
其中,1、启动文件生成任务的详细流程如图2所示。
1.1.初始化会话信息管理
初始化会话管理器,对会话信息进行识别分组。同一个评审流程ID下的文件生成任务会话信息被分到同一个组别进行管理。
1.2.多人并发任务共享
获取步骤1.1的会话分组信息,判断该分组下是否存在正在执行的文件生成程序,如果有就进行组内共享,如果没有就新启动一个文件生成程序,并进行组内共享。
其中,1.1初始化会话信息详细流程如图3所示。
1.1.1初始化会话管理器
获取会话管理器,如果获取失败,则初始化一个全局的会话管理器实例。会话管理器采用单例的模式进行设计,整个应用系统中保证只有一个会话管理器,并且实现上需要保证线程安全和相互共享。
1.1.2.会话分组管理
获取步骤1.1.1的会话管理器,根据参入参数评审流程ID查询相关的会话分组信息,如果对应的会话分组信息不存在,则初始化一个会话分组实例,如果存在则直接获取使用,并将当前会话信息添加到该会话分组中。
其中,1.2、多人并发任务共享的详细流程如图4所示。
1.2.1.获取会话管理器
获取全局的会话管理器。
1.2.2.获取所有正在执行的任务清单
从步骤1.2.1获取的会话管理器中获取所有正在执行的任务清单列表。此处实际上就是任务清单。描述中任务清单列表和任务清单是一个意思。
1.2.3.判断当前任务是否在任务清单中存在
用当前任务接收到的评审流程ID参数与步骤1.2.2获取到的任务清单进行比对,如果存在则进入到步骤1.2.6进行处理,如果不存在则进入到步骤1.2.4进行处理。
1.2.4.启动文件生成过程自动执行程序
根据系统配置参数查找到文件生成程序位置,启动参数等信息,动态拼接程序启动命令并启动,获取文件生成程序进程对象。
1.2.5.保存启动进行信息
将步骤1.2.4获取到的文件生成程序进程对象保存到步骤1.2.1获取到的会话管理器中。以评审流程ID作为KEY。
1.2.6.维护正在执行的任务清单
调用步骤1.2.1获取到的会话管理器的添加正在执行的任务清单方法,将该任务保持的评审流程ID保存到任务清单中。
1.2.7.获取所属组
根据当前任务保持的评审流程ID从步骤1.2.1获取到相应的会话组信息。
1.2.8.重新发送执行过程信息
从步骤1.2.6获取到的会话组中获取历史已经发送过的执行过程信息,给本会话终端重新发送一遍,实现多用户并发的任务信息共享。如果本次是首次启动任务,则重新发送的执行过程信息为空。但如果不是首次启动,已经有其他终端用户启动过了,则将之前的过程执行动态信息给本终端重新发送一次。
其中,2、作业执行信息展示的详细流程如图5所示。
2.1.获取文件生成实时动态信息
获取全局的会话管理器,并从中根据参数评审流程ID获取执行任务进程,然后再将进程封装为输入流,从中读取文件生成过程实时动态信息,包括错误信息等。
2.2.多人共享信息
将从步骤2.1获取到的实时动态信息进行多人共享,信息推送的时候给所有终端用户发送一遍。
2.3.接收并展示实时信息
接收步骤2.2推送的实时动态信息,并在网页上自动打印信息,当信息很多时,自动滚屏到最新信息位置。
其中,2.1获取文件生成实时动态信息详细流程如图6所示。
2.1.1.获取会话管理器
获取全局的会话管理器。
2.1.2.获取执行任务进程信息
2.1.3.获取文件生成实时动态信息
根据参数评审流程ID从步骤2.1.1获取的会话管理器中获取保存的任务进程信息。
从步骤2.1.2获取的进程对象,获取其输入流和错误流对象,从中读取文件生成过程中的实时打印信息,以及错误信息。
其中,2.2多人共享信息详细流程如图7所示。
2.2.1.获取会话管理器
获取全局的会话管理器。
2.2.2.获取会话组
根据参数评审流程ID从步骤2.1.1获取的会话管理器中获取会话组信息。
2.2.3.推送文件生成实时动态信息
循环处理步骤2.2.2获取的会话组内所有的会话信息,将步骤2.1获取的文件生成实时动态信息给所有组内会话终端发送一遍。
2.2.4.保存推送过的实时动态信息
将步骤2.2.3推送过的实时动态信息保存在步骤2.2.2获取的会话组信息中,供步骤1.2.8重新发送执行过程信息使用。
其中,3监听交互命令详细流程如图8所示:
3.1.接收指令
指令接收器启动在客户端,接收所有来自用户,或者来自服务器端的指令。
3.2.指令路由
根据从步骤3.1接收到的指令,启动相应的指令响应动作。
1)taskCancel:进入步骤3.3终止文件生成;
2)autoOpenFile:进入步骤3.4文件在线浏览;
3)fileinfo:进入步骤3.5文件下载链接自动生成;
3.3.终止文件生成
无视任务执行状态,直接进入到步骤4结束文件生成任务。
3.4.文件在线浏览
由于文件生成用时较长,客户端用户可能没有能及时了解到文件已经生成结束。该命令可以自动下载结果文件,弹出文件在线浏览界面,以及时提醒终端用户。
3.5.文件下载链接自动生成
该命令会进一步获取文件的详细信息,生成新的展示界面,提供文件的下载链接。
其中,4结束文件生成任务详细流程如图9所示。
4.1.立即结束文件生成任务
从全局的会话管理器中根据评审流程ID获取文件生成程序进程对象,并结束该进程对象。
4.2.清除会话组
从全局的会话管理器中根据评审流程ID获取会话组信息,并将该会话组信息进行删除,清空。
4.3.维护正在执行任务清单
从全局的会话管理器中根据评审流程ID获取所有正在执行的任务清单列表,并将该任务进行删除,清空。
实施例三:
本发明应用到文档在线评审系统中,有如下三个步骤:
实现效果:
1、文件生成过程中的动态信息实时展示在任务管理界面中;
2、文件生成过程中可以终止文件生成任务;
3、多人同时并发启动相同任务,会自动合并为同一任务,并实现多人的文件生成过程实时动态信息,文件生成结果共享;
4、文件生成过程中,其他人进入到该任务的管理界面并启动任务,也能分享到当前文件生成任务的完整实时动态信息以及文件生成结果;
5、文件生成后自动弹出是否在线浏览对话框,同意后直接在线打开;
6、在管理界面自动生成文件下载链接
实施例中,通过WEB网页的方式提供文件生成任务的在线配置功能,可配置生成文件的封面,需要评审的文件集合,参与评审的专家列表,专家分类及指责,配置评审文件检查单内容等。这些信息在线设置好后会自动生成一个xml格式的配置文件给文件生成批处理程序使用。
文件生成批处理程序实现:
批处理文件对每个实例化任务创建一个工作空间,每个实例化任务的相关配置信息通过在线任务配置的方式配置好后,生成xml文件存放在各自对应的工作空间中。文件生成批处理程序读取xml文件进行最终评审文件生成,实现生成过程中的事实信息在控制台中的实施输出,支持生成过程中的任务终止等控制操作。
在任务管理界面,启动及监控任务:
评审管理员在线审查文件生成任务的配置信息,无疑问则在线启动任务。通过向本专利发送启动信号,本专利自动启动文件生成批处理程序,并将文件生成信息动态展示在任务管理界面中。
可以理解:对最终评审文件生成任务执行过程进行管控,解决生成过程动态信息实时推送到终端用户;实现多人同时启动同一个最终评审文件生成任务的时候,是相互共享的;文件生成过程中的动态信息实时展示在任务管理界面中;文件生成过程中可以终止文件生成任务;多人同时并发启动相同任务,会自动合并为同一任务,并实现多人的文件生成过程实时动态信息,文件生成结果共享;文件生成过程中,他人进入到该任务的管理界面并启动任务,也能分享到当前文件生成任务的完整实时动态信息以及文件生成结果;文件生成后自动弹出是否在线浏览对话框,同意后直接在线打开;在管理界面自动生成文件下载链接。
上面对本发明优选实施方式作了详细说明,但是本发明不限于上述实施方式,在本领域普通技术人员所具备的知识范围内,还可以在不脱离本发明宗旨的前提下做出各种变化。
不脱离本发明的构思和范围可以做出许多其他改变和改型。应当理解,本发明不限于特定的实施方式,本发明的范围由所附权利要求限定。
Claims (5)
1.基于HTTP协议的多人并发文件生成动态信息推送方法,其特征在于,所述方法包括:
S1:初始化会话管理器,对输入的会话信息进行识别分组,得到会话分组信息;
S2:获取所述会话分组信息,判断该分组下是否存在正在执行的文件生成程序,若存在,进行组内共享;若不存在,重启一个文件生成程序,并进行组内共享;
S3:调用会话管理器,根据评审流程ID获取执行任务进程,将执行任务进程封装为输入流,并读取文件生成过程的实时动态信息;
S4:将获取到的实时动态信息进行多人共享,并将实时动态信息推送给所有终端用户;
所述步骤S2具体包括:
S21:调用会话管理器;
S22:获取会话管理器中所有正在执行的任务清单;
S23:用当前任务接收到的评审流程ID与步骤S22获取到的任务清单进行比对,如果存在则进入到步骤S26进行处理,如果不存在则进入到步骤S24进行处理;
S24:根据系统配置参数查找到文件生成程序位置,启动参数信息,动态拼接程序启动命令并启动,获取文件生成程序进程对象;
S25:将步骤S24获取的文件生成程序进程对象保存至步骤S21中获取到的会话管理器中,以评审流程ID作为钥匙;
S26:维护步骤S22中所有正在执行的任务清单;
S27:根据所述任务保持的评审流程ID从步骤S21的会话管理器中获取相关联的会话分组信息;
S28:从步骤S27获取到的会话分组信息中获取历史已经发送过的执行过程信息,重新发送一遍至本会话终端,即多用户并发的任务信息共享;如果本次是首次启动任务,则重新发送的执行过程信息为空;如果不是首次启动,存在其他终端用户启动过,则将之前的执行过程信息给本会话终端重新发送一次;
步骤S3具体包括:
S31:调用会话管理器;
S32:根据评审流程ID从步骤S31获取的会话管理器中获取保存的任务进程信息;
S33:从步骤S32获取的任务进程信息中,获取其输入流和错误流对象,从中读取文件生成过程中的实时打印信息,以及错误信息;
所述方法还包括:
S51:接收所有来自用户或者来自服务器端的指令;
S52:根据从步骤S51接收到的指令,启动相应的指令响应动作;
所述来自用户或者来自服务器端的指令包括:
taskCancel:进入步骤S53终止文件生成;
autoOpenFile:进入步骤S54文件在线浏览;
fileinfo:进入步骤S55文件下载链接自动生成;
S53:无视任务执行状态,直接进入到结束文件生成任务中,结束文件生成任务;
S54:自动下载结果文件,弹出文件在线浏览界面,以及时提醒终端用户;
S55:进一步获取文件的详细信息,生成新的展示界面,提供文件的下载链接。
2.根据权利要求1所述的基于HTTP协议的多人并发文件生成动态信息推送方法,其特征在于,所述步骤S1具体包括:
获取会话管理器,如果获取失败,则初始化一个会话管理器实例,所述会话管理器采用单例模式进行设计;根据参入评审流程ID查询会话管理器中相关联的会话分组信息及分组中的当前会话信息;如果对应的会话分组信息不存在,则初始化一个会话分组实例,如果存在则直接获取使用,并将所述当前会话信息添加到该会话分组中。
3.根据权利要求1所述的基于HTTP协议的多人并发文件生成动态信息推送方法,其特征在于,所述步骤S4具体包括:
S41:调用会话管理器;
S42:根据评审流程ID从步骤S41获取的会话管理器中获取会话组信息;
S43:循环处理步骤S42获取的会话组信息内的所有会话信息,将S3获取的文件生成过程的实时动态信息给所有组内会话终端推送一遍;
S44:将步骤S43推送过的实时动态信息保存在步骤S42获取的会话组信息中,供步骤S28重新发送执行过程信息使用。
4.根据权利要求1所述的基于HTTP协议的多人并发文件生成动态信息推送方法,其特征在于,所述结束文件生成任务包括以下步骤:
S61:从会话管理器中根据评审流程ID获取文件生成程序进程对象,并结束该进程对象;
S62:从会话管理器中根据评审流程ID获取会话组信息,并将该会话组信息进行删除、清空;
S63:从会话管理器中根据评审流程ID获取所有正在执行的任务清单,并将该正在执行的任务清单中的任务进行删除、清空。
5.基于HTTP协议的多人并发文件生成动态信息推送系统,其特征在于,所述系统包括:
一个或多个处理器;
存储器,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器执行如权利要求1-4任一所述的基于HTTP协议的多人并发文件生成动态信息推送方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210530624.9A CN115102938B (zh) | 2022-05-16 | 2022-05-16 | 基于http协议的多人并发文件生成动态信息推送方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210530624.9A CN115102938B (zh) | 2022-05-16 | 2022-05-16 | 基于http协议的多人并发文件生成动态信息推送方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115102938A CN115102938A (zh) | 2022-09-23 |
CN115102938B true CN115102938B (zh) | 2024-06-25 |
Family
ID=83288334
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210530624.9A Active CN115102938B (zh) | 2022-05-16 | 2022-05-16 | 基于http协议的多人并发文件生成动态信息推送方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115102938B (zh) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006171994A (ja) * | 2004-12-14 | 2006-06-29 | Fuji Xerox Co Ltd | 文書レビュー支援装置、文書レビュー支援方法及び文書レビュー支援プログラム |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106713363B (zh) * | 2017-02-27 | 2020-06-09 | 北京亚太东方通信网络有限公司 | 一种构建基于全球传输共享交互网服务的方法 |
US11561771B2 (en) * | 2017-08-22 | 2023-01-24 | Codestream, Inc. | System and method for in-ide code review |
CN107734074B (zh) * | 2017-11-29 | 2020-06-12 | 常州中价之星软件技术有限公司 | 一种在线阅读和编辑文档的实现方法 |
CN110189098A (zh) * | 2019-05-13 | 2019-08-30 | 北京机电工程总体设计部 | 一种在线评审方法 |
CN113992459B (zh) * | 2020-07-09 | 2023-09-15 | 腾讯科技(深圳)有限公司 | 代码评审数据处理方法、装置、计算机设备和存储介质 |
-
2022
- 2022-05-16 CN CN202210530624.9A patent/CN115102938B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006171994A (ja) * | 2004-12-14 | 2006-06-29 | Fuji Xerox Co Ltd | 文書レビュー支援装置、文書レビュー支援方法及び文書レビュー支援プログラム |
Also Published As
Publication number | Publication date |
---|---|
CN115102938A (zh) | 2022-09-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8819560B2 (en) | Dispatching events to multiple browser windows/tabs using a single connection | |
US8782676B2 (en) | System and method for communication between portal applications and portlet containers | |
US7080120B2 (en) | System and method for collaborative processing of distributed applications | |
US7562115B2 (en) | Method and apparatus for connecting a secure peer-to-peer collaboration system to an external system | |
US8914804B2 (en) | Handling queues associated with web services of business processes | |
US8543972B2 (en) | Gateway data distribution engine | |
CN102449628A (zh) | 用于持久性Web应用设计的架构模式 | |
US20090006432A1 (en) | Systems and methods for merging data into documents | |
JP2006318499A (ja) | サーバとクライアントノードとの間の接続を管理するシステムおよび方法 | |
EP1850225A1 (en) | Mapping a new user interface onto an existing integrated interface | |
US10404568B2 (en) | Agent manager for distributed transaction monitoring system | |
US20180027355A1 (en) | Data download method and apparatus | |
US20080154690A1 (en) | Method and system for managing an integrated worklist | |
US20210334185A1 (en) | Task based service management platform | |
CN115102938B (zh) | 基于http协议的多人并发文件生成动态信息推送方法及系统 | |
EP1079318A2 (en) | Message processing system | |
JP2006091954A (ja) | リモート接続システム、サーバコンピュータ、リモート接続方法及びプログラム | |
US7992091B2 (en) | Message-oriented divergence and convergence of message documents | |
US10180862B1 (en) | System and method for integrating multiple applications operating on a shared platform | |
US9292364B1 (en) | Packaging application data and logic for offline support | |
US9542171B2 (en) | Managing an application modification process | |
JP2006276939A (ja) | 仮想マシンのプログラム起動方法およびクライアントサーバシステム | |
WO2023147202A1 (en) | Method of offline operation of an intelligent, multi-function robot | |
US20070073902A1 (en) | Information processor, information processing method and program | |
Romero et al. | An efficient mobile-based middleware architecture for building robust, high-performance apps |
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 |