1 Star 5 Fork 5

闲.大赋(李家智) / template-benchmark

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
README.md 1.75 KB
一键复制 编辑 原始数据 按行查看 历史

模板引擎性能测试

使用 JMH ,测试结果更权威

运行

  1. mvn clean install
  2. 运行 java -jar target/benchmarks.jar
  3. 单独运行 java -jar target/benchmarks.jar Beetl

目前结果(2022-9-18)越高越好

Benchmark              Mode  Cnt      Score      Error  Units
Beetl.benchmark       thrpt    5  87990.586 ± 1809.284  ops/s
Enjoy.benchmark       thrpt    5  75279.986 ± 1094.466  ops/s
Freemarker.benchmark  thrpt    5  23879.653 ±  554.552  ops/s
Handlebars.benchmark  thrpt    5  21257.271 ±  386.994  ops/s
Rocker.benchmark      thrpt    5  49405.710 ±  939.591  ops/s
Thymeleaf.benchmark   thrpt    5   6812.129 ±  139.538  ops/s
Velocity.benchmark    thrpt    5   7160.998 ± 1290.092  ops/s

注意,较早版本性能测试包含了字节直接输出这种情况,考虑到大多数模板引擎不支持,取消了这种方式 (静态文本)字节直接输,不需要转码,对web性能有很大提升

总结

  • Beetl在任何模式性下能都是最好的,靠的的是微优化技巧。可以参考我的来自大厂的性能调优经验总结 https://www.kancloud.cn/xiandafu/javamicrotuning
  • Thymeleaf 和 Velocity 性能是最糟糕的,这个测试毫无疑问又一次证明
  • 并发测试考虑到机器性能原因,有可能不准,供参考。可以查看单线程性能测试结果,这能体现模板引擎的能力
Java
1
https://gitee.com/xiandafu/template-benchmark.git
git@gitee.com:xiandafu/template-benchmark.git
xiandafu
template-benchmark
template-benchmark
master

搜索帮助