由上篇得知 整个qlexpress的执行过程:
(1)单词分解
(2)单词类型分析
(3)语法分析
(4)生成运行期指令集合
(5)执行生成的指令集合。
其中前4个过程涉及语法的匹配运算等非常耗时,要做到使qlExpress的性能最大化,你可以做以下两方面的优化:
1、ExpressRunner设置成singleton(结合spring是非常容易做到的)
2、execute方法的参数设置 isCache =true(它会把 expressString 编译成一段指令,缓存在内存中,相当于缓存了(1)->(4)的过程)
我们把日志信息相关的参数都关闭掉,拿自己的pc机测试下:【
CPU型号:
Intel 酷睿i5 2430M,内存容量:
2GB DDR3 1333MHz
】
做一个简单的性能测试:详见 com.ql.util.express.test.ExpressTest
@org.junit.Test
public void tes10000次() throws Exception{
ExpressRunner runner = new ExpressRunner();
String express = "10 * 10 + 1 + 2 * 3 + 5 * 2";
int num = 100000;
runner.execute(express,null, null, true,false);
long start = System.currentTimeMillis();
for(int i = 0;i< num;i++){
runner.execute(express,null, null, true,false);
}
System.out.println("执行" + num +"次\""+ express +"\" 耗时:"
+ (System.currentTimeMillis() - start));
}
结果如下:
执行100000次"10 * 10 + 1 + 2 * 3 + 5 * 2" 耗时:203
速度还是挺不错的。
分享到:
相关推荐
3、弱类型脚本语言,和groovy,javascript语法类似,虽然比强类型脚本语言要慢一些,但是使业务的灵活度大大增强。 4、安全控制,可以通过设置相关运行参数,预防死循环、高危系统api调用等情况。 5、代码精简,依赖...
3、弱类型脚本语言,和groovy,javascript语法类似,虽然比强类型脚本语言要慢一些,但是使业务的灵活度大大增强。 4、安全控制,可以通过设置相关运行参数,预防死循环、高危系统api调用等情况。 5、代码精简,依赖...
7. **性能优化**:对于脚本语言,性能优化包括代码重构、算法选择、资源管理等方面。书中可能会教读者如何提高脚本运行速度和降低资源消耗。 8. **脚本集成与部署**:如何将脚本与其他系统或服务集成,例如API调用...
简单明了的shell脚本语言讲义,让你轻松了解shell语言。
QLExpress是一种强大、轻量级且动态的编程语言,它为开发者提供了高效的代码编写和执行环境。QLExpress的设计目标是简化编程过程,提高开发效率,同时保持灵活性和可扩展性。这种语言通常适用于快速开发、脚本编写...
使用/ dev / usb / lp0设备句柄) 声称支持以下打印机(✓表示经过作者或贡献者验证的打印机): QL-500(✓),QL-550(✓),QL-560(✓),QL-570(✓),QL-580N,QL-650TD,QL-700(✓),QL-710W(✓), QL-...
《3ds MAXScript脚本语言完全学习手册》是一本全面介绍MAXScript脚本语言的教程,不仅适合于初学者学习基础知识,也适合于专业人士深入了解高级功能和技术细节。通过本书的学习,读者将能够有效地利用MAXScript提升...
**批处理**(Batch Scripting),是一种计算机编程语言,它允许用户创建一系列预定义命令的脚本文件,以实现自动化任务的执行。在Windows操作系统中,这种脚本通常被称为**批处理脚本**,其文件扩展名为`.bat`或`....
Linux 内核CVE-2024-1086漏洞复现脚本。 在普通用户下,将文件上传后,chmod 777 exploit ,然后运行 ./exploit ,提权成功,输入id,可看到已经是root权限 。
magic-script是一款基于JVM的脚本语言,目前主要是为magic-api项目设计。magic-api,接口快速开发框架,通过Web页面配置,自动映射为HTTP接口;spider-flow,新一代爬虫平台,以图形化方式定义爬虫流程,不写代码...
仅供学习。勿用商业。谢谢合作。漏洞验证脚本ssl-deacth-alert(cve-2016-8610)
跨站脚本攻击(Cross-Site Scripting,简称XSS)是一种常见的网络安全漏洞,它允许攻击者通过在网页上插入恶意脚本,从而在用户的浏览器上执行代码。这些脚本可以窃取用户的数据,包括登录凭证、个人信息,甚至操纵...
【loadRunner入门教学详细讲解】 LoadRunner是一款由Micro Focus公司开发的企业级性能测试工具,它广泛应用于软件性能测试,能够模拟大量并发用户,检测系统在高负载下的性能表现。本教学文档将帮助初学者深入了解...
- 脚本语言封装:使用Python、Perl或Shell脚本封装SQL查询,增加自动化功能。 - 自动化平台集成:与Ansible、Jenkins等自动化平台结合,实现全生命周期的监控。 综上所述,“mysql 性能监控脚本”是MySQL运维中的...
Hyper-V 是微软提供的一种虚拟化技术,主要用于在Windows操作系统上创建和管理虚拟机。这个"一键安装 Hyper-V 脚本"(Hyper-V.bat)是一个方便用户快速在Windows家庭版上安装Hyper-V组件的自动化工具。通常,Hyper-V...
标题"WINCC全局脚本-使用手册-中文版.zip"表明这是一个关于SIMATIC WinCC(西门子的一种人机界面软件)的资源,具体来说是关于全局脚本的使用手册,且该手册是中文版本。这意味着手册将详细解释如何在WinCC项目中...
总结来说,"网页JavaScript脚本语言提取器"是开发者和学习者的重要工具,它能够帮助我们深入理解网页背后的JavaScript逻辑,进行有效的测试和分析,提升开发效率和网页性能。对于那些需要从网页中获取或分析...
《程序设计实践》大作业的主题是设计和实现一种领域特定脚本语言的解释器,旨在锻炼学生的编程能力和对计算机语言的理解。在这个项目中,学生卓睿将专注于计算机科学与技术的专业知识,特别是在编译原理和解释器构建...
Unity 3D脚本编程-使用C#语言开发跨平台游戏