【技术实现步骤摘要】
基于Nashorn的数据高效解析处理方法和装置
[0001]本专利技术属于数据处理
,具体涉及一种基于Nashorn的数据高效解析处理方法和装置。
技术介绍
[0002]中国各大区的云电脑用户在进行云电脑的相关附加功能申请、私有云部署需求收集、云电脑产品需求建议等业务申请时,会在翼飞低代码平台产生线上业务数据。而处理业务的工作人员,则需要进入内部工单系统,才能进行功能开通和具体的业务处理。因此,翼飞需要实时、高效地通过接口方式把业务数据发送到工单系统中。
[0003]而常规的数据平台使用Rhino引擎来处理业务数据中的JS代码。如附图1所示,Rhino直接使用Java写的字节码解释器来解释执行JavaScript,达到数据处理的效果。然而,Rhino做的优化不够多,而且JavaScript的语义也远比Java动态。所以在Rhino上运行JavaScript的性能仍然无法跟Java的性能比。总体来说,Rhino存在运行效率低、速度慢、延时高、灵活性低、扩展性差等问题。无法满足大规模业务数据产生的应用场景。 >
技术实现思路
...
【技术保护点】
【技术特征摘要】
1.一种基于Nashorn的数据高效解析处理方法,其特征在于,包括:获取第一输入,在Activiti引擎中创建一个流程实例;在所述流程实例中创建异步线程,并在所述异步线程中启动Nashorn引擎;在所述Nashorn引擎中创建Nashorn沙箱工厂;获取JS代码,并在所述Nashorn沙箱工厂中处理所述代码数据;输出所述代码数据,返回给Activiti引擎,并通过HttpClient进行通信。2.根据权利要求1所述的数据高效解析处理方法,其特征在于,所述获取第一输入包括:在云桌面用户进行云电脑附加功能申请的情况下,获取通过翼飞低平台发起的工单数据。3.根据权利要求2所述的数据高效解析处理方法,其特征在于,所述Nashorn引擎可在Java代码和JavaScript之间进行全双工通信。4.根据权利要求1所述的数据高效解析处理方法,其特征在于,所述获取JS代码,并在所述Nashorn沙箱工厂中处理所述代码数据,具体包括:获取Nashorn沙箱资源;通过引擎调用系统和IO操作,获取所述Activiti引擎中的API接口以及所述JS代码;将所述JS代码通过编译器转换为Java字节码;将所述Java字节码通过JVM加载和执行后输出所述代码数据。5.根据权利要求4所述的数据高效解析处理方法,其特征在于,所述将所述JS代码通过编译器转换为Java字节码,具体包括:使用所述编译器,并调用相关JS库和JS的标准语法;将所述JavaScript代码输入到所述编译器中,并编译成所述Java字节码。6.根据权利要求5所述的数据高...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。