为什么 StringTemplate 会很慢?
我使用 StringTemplate 作为我的 Web 应用程序的视图层。最近我测量了渲染页面所花费的时间,简单页面约为 50 毫秒,复杂页面约为 500 毫秒。这对于我的需求来说太多了,所以我正在寻找一种方法来提高 ST 的性能。我该怎么做?
大部分时间都被StringTemplate.toString方法消耗了,所以不是缓存问题。
我积极使用匿名模板和包含模板 - 这可能是原因吗?
I'm using StringTemplate as view layer for my web application. Recently I've measured how much time is spent rendering pages and it's around 50ms for simple pages and 500ms for complex pages. This is too much for my needs, so I'm looking for a way to improve ST's performance. How can I do this?
Most of the time is consumed by the StringTemplate.toString method, so it's not a cache problem.
I actively use anonymous templates and included templates - could this be the cause?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
使用 write() 而不是 toString 然后写入流。 write() 将渲染和传输,无需缓冲。差别很大。
特尔
use write() not toString then writing to your stream. write() will render and transmit w/o buffering. big difference.
Ter
那是特伦斯·帕尔吗?
我认为特伦斯的意思是,
但我不相信这会产生任何明显的差异。
您应该分别对两件事进行计时,
缓慢可能出现在涉及 IO 的第二行。
Is that the Terence Parr?
I think what Terence meant is
however I can not beieve that will make any noticeable difference.
You should time two things separately
the slowness is probably on the 2nd line which involves IO.
如果您使用
toString()
内存会很大。使用
toString()
案例运行负载测试时检查您的内存。如果你的内存足够的话。两种情况是同时发生的。
If you use
toString()
Memory is going to large.Check your memory when run load test with
toString()
case.If your memory is enough. Two case is the same time.