[发明专利]基于Nashorn的数据高效解析处理方法和装置在审
申请号: | 202211708640.9 | 申请日: | 2022-12-29 |
公开(公告)号: | CN116048520A | 公开(公告)日: | 2023-05-02 |
发明(设计)人: | 魏焯辉 | 申请(专利权)人: | 天翼云科技有限公司 |
主分类号: | G06F8/41 | 分类号: | G06F8/41;G06F8/30;G06F21/53 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 100010 北京市东城区青*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 nashorn 数据 高效 解析 处理 方法 装置 | ||
本发明公开了一种基于Nashorn的数据高效解析处理的方法和装置,属于数据处理领域,包括:获取第一输入,在Activiti引擎中创建一个流程实例;在所述流程实例中创建异步线程,并在所述异步线程中启动Nashorn引擎;在所述Nashorn引擎中创建Nashorn沙箱工厂;获取JS代码,并在所述Nashorn沙箱工厂中处理所述代码数据;输出所述代码数据,返回给Activiti引擎,并通过HttpClient进行通信。本方案能够解决目前数据平台使用Rhino引擎来处理业务数据中运行效率低、速度慢、延时高、灵活性低、扩展性差,无法满足大规模业务数据产生的应用场景等问题。
技术领域
本发明属于数据处理技术领域,具体涉及一种基于Nashorn的数据高效解析处理方法和装置。
背景技术
中国各大区的云电脑用户在进行云电脑的相关附加功能申请、私有云部署需求收集、云电脑产品需求建议等业务申请时,会在翼飞低代码平台产生线上业务数据。而处理业务的工作人员,则需要进入内部工单系统,才能进行功能开通和具体的业务处理。因此,翼飞需要实时、高效地通过接口方式把业务数据发送到工单系统中。
而常规的数据平台使用Rhino引擎来处理业务数据中的JS代码。如附图1所示,Rhino直接使用Java写的字节码解释器来解释执行JavaScript,达到数据处理的效果。然而,Rhino做的优化不够多,而且JavaScript的语义也远比Java动态。所以在Rhino上运行JavaScript的性能仍然无法跟Java的性能比。总体来说,Rhino存在运行效率低、速度慢、延时高、灵活性低、扩展性差等问题。无法满足大规模业务数据产生的应用场景。
发明内容
本发明实施例的目的是提供一种基于Nashorn的数据高效解析处理的方法和装置,能够解决目前数据平台使用Rhino引擎来处理业务数据中运行效率低、速度慢、延时高、灵活性低、扩展性差,无法满足大规模业务数据产生的应用场景等问题。
为了解决上述技术问题,本发明是这样实现的:
第一方面,本发明实施例提供了一种基于Nashorn的数据高效解析处理方法,包括:
获取第一输入,在Activiti引擎中创建一个流程实例;
在所述流程实例中创建异步线程,并在所述异步线程中启动Nashorn引擎;
在所述Nashorn引擎中创建Nashorn沙箱工厂;
获取JS代码,并在所述Nashorn沙箱工厂中处理所述代码数据;
输出所述代码数据,返回给Activiti引擎,并通过HttpClient进行通信。
可选地,所述获取第一输入包括:在云桌面用户进行云电脑附加功能申请的情况下,获取通过翼飞低平台发起的工单数据。
可选地,所述Nashorn引擎可在Java代码和JavaScript之间进行全双工通信。
可选地,所述获取JS代码,并在所述Nashorn沙箱工厂中处理所述代码数据,具体包括:
获取Nashorn沙箱资源;
通过引擎调用系统和IO操作,获取所述Activiti引擎中的API接口以及所述JS代码;
将所述JS代码通过编译器转换为Java字节码;
将所述Java字节码通过JVM加载和执行后输出所述代码数据。
可选地,所述将所述JS代码通过编译器转换为Java字节码,具体包括:
使用所述编译器,并调用相关JS库和JS的标准语法;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于天翼云科技有限公司,未经天翼云科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202211708640.9/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种注射成型机低惯量的射出机构
- 下一篇:一种冷却装置
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置