Fazendo o Groovy gritar: melhorando a performance dos scripts embarcados

Fazendo o Groovy gritar: melhorando a performance dos scripts embarcados 1

fast_groovyDando continuidade a série de vídeos sobre Groovy e Grails, agora veremos como aumentar significativamente a performance dos scripts Groovy carregados dinâmicamente em uma aplicação Java.

Como veremos, os ganhos de performance são significativos e a técnica muito simples: basta pré-compilar os scripts antes destes serem executados. Também será respondida a pergunta: “qual o impacto do Security Manager sobre a performance do sistema?”. Como mostro, desprezível pra dizer o máximo. :)

Recursos para vocês se aprofundarem

A classe CompilerConfiguration: http://groovy.codehaus.org/api/org/codehaus/groovy/control/CompilerConfiguration.html

Apesar de não levar benchmarks muito a sério, um que mostra a performance do Groovy não tão distante assim do Java nativo (de 2012, as coisas melhoraram ainda mais este ano): http://java.dzone.com/articles/groovy-20-performance-compared

Código fonte do vídeo

Todo o código fonte, pra variar, está no GitHub: https://github.com/loboweissmann/groovy-grails-na-pratica (busque pela pasta embarcando_groovy_performance na raíz do projeto).

E o vídeo?

Eis o link: http://www.youtube.com/watch?v=Fa__6_5Z-wc&feature=youtu.be

2 comments on “Fazendo o Groovy gritar: melhorando a performance dos scripts embarcados

  1. Thiago

    Pergunta: por que você prefere “embarcado” ao invés de “embutido”? Somos mineiros, então não entendemos bem de navios e barcos! :-P Além disso, você está provavelmente traduzindo a palavra “embedded”, que, de acordo com a Universidade de Oxford, não tem nenhum significado relativo a barcos: http://oxforddictionaries.com/definition/english/embed?q=embedded. (Detalhe inútil: trabalhei muito como parte do time que implementou o oxforddictionaries.com).

  2. Kico (Henrique Lobo Weissmann) Post author

    Oi Thiago HP, muito obrigado pelo seu “construtivo comentário”.

    A resposta para a sua dúvida é simples: por que eu quis e foi o termo que sempre usei. :)

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.