You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@groovy.apache.org by "Paul King (Jira)" <ji...@apache.org> on 2020/09/06 09:42:00 UTC

[jira] [Commented] (GROOVY-9716) Close Performance Gap in Groovy Templates

    [ https://issues.apache.org/jira/browse/GROOVY-9716?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17191232#comment-17191232 ] 

Paul King commented on GROOVY-9716:
-----------------------------------

It would be interesting to know why they turned off caching for the Groovy version. Perhaps their benchmark can be altered slightly to allow caching to be enabled.

> Close Performance Gap in Groovy Templates
> -----------------------------------------
>
>                 Key: GROOVY-9716
>                 URL: https://issues.apache.org/jira/browse/GROOVY-9716
>             Project: Groovy
>          Issue Type: Improvement
>          Components: Templating
>            Reporter: Suminda Dharmasena
>            Priority: Major
>
> Groovy Templates seams to be comparatively less performant than other templating solutions. E.g.: [https://github.com/jreijn/spring-comparing-template-engines]
>  
> Can this performance gap be closed making it the most performant?
>  
> Also is it possible to add partials evaluation support when only parts of the template need reevaluation when part of the data changes.
>  
> Possible areas to improve:
>  * Faster reflection can be used like used in: [https://github.com/EsotericSoftware/reflectasm]
>  * Be lock-free as much as possible. Maybe [disruptor-proxy|https://github.com/LMAX-Exchange/disruptor-proxy] pattern can be used but with [Conversant Disruptor|https://github.com/conversant/disruptor] limited to the methods which need synchronising
>  * Use faster primitive collections
>  * Use faster logger like Log4J2 with [Conversant Disruptor|https://github.com/conversant/disruptor]
> NB: This benchmark may be dated but some outperform stringbuilder: https://github.com/greenlaw110/template-engine-benchmarks 



--
This message was sent by Atlassian Jira
(v8.3.4#803005)