我真的很喜欢Grails,但我想知道如何获得Groovy 2的性能优势。 问题是如何配置开发和生产环境以便“接近Java”性能提升。
所以,如果我设置:
* JDK 7
* Groovy 2 (indie JAR to use invokedynamic)
* Grails 2.2
是否有任何指导方针可以真正加快我的webapp 开箱即用?
我是否需要在Grails webapp代码库中进行任何重新分解?我的意思是依赖注入的东西,如控制器中的引用服务应该是静态编译的,还是我应该按照文档的说法继续编写代码?
ps:我猜Groovy @CompileStatic and Grails可能是一个相关的问题......
答案 0 :(得分:5)
这取决于什么可能会减慢您的Web应用程序速度:)我知道“它取决于”通常是答案,但它仍然是真的。
无论如何,我已经四处询问,似乎Grails和invokedynamic还没有合在一起。重新加载代理需要更新,并且Hibernate使用的cglib / asm库可能存在问题。
无论如何,内部Grails越来越多地使用@CompileStatic(对于那些尚未用Java编写的东西),所以除非你的应用程序本身做了很多工作,否则你不太可能看到很大的用invokedynamic提升。
有一些关于此的官方信息会很有用,但现在还没有。