来自TagLib开销的Grails服务调用



我有一个非常简单的taglib和服务:

class TestTagLib {
    FooService fooService
    static namespace = "bar"
    def test = {
        out << "text"
    }
}
class FooService {
    //This is an empty method that does absolutely nothing
    void foo() { }
}

如果我在一个页面上重复这个taglib 20次,它会立即执行。但现在如果调用该服务:

...
fooService.foo()
out << "test"
...

突然间,这20个标签库导致页面加载耗时2秒。服务调用的开销会如此之高,这似乎是不对的。。。还是这样?我该怎么调试它呢?

默认情况下,服务方法是事务性的。因此,对于fooService.foo()的每一次调用,您都会获得完整的数据库事务创建和提交的开销。

相关内容

  • 没有找到相关文章

最新更新