我一个Struts1
应用程序转换为Struts2
。作为开始,我只移植了一些操作,以了解它们在Struts2
中的行为。其中一个操作每秒发送一次由客户端发送的Ajax请求。在当前的Struts1
实现中,请求需要大约10-15毫秒才能执行,我可以在Firebug中看到它。 Struts2
版本现在需要超过250毫秒。我将分析拦截器添加到操作中,我可以看到大部分时间都用于设置操作的执行。在拦截器上花费的时间可以忽略不计。Struts2的性能
难道正常吗?
在此先感谢您的帮助。
我一个Struts1
应用程序转换为Struts2
。作为开始,我只移植了一些操作,以了解它们在Struts2
中的行为。其中一个操作每秒发送一次由客户端发送的Ajax请求。在当前的Struts1
实现中,请求需要大约10-15毫秒才能执行,我可以在Firebug中看到它。 Struts2
版本现在需要超过250毫秒。我将分析拦截器添加到操作中,我可以看到大部分时间都用于设置操作的执行。在拦截器上花费的时间可以忽略不计。Struts2的性能
难道正常吗?
在此先感谢您的帮助。
follwing的步骤,
,并且可以使用定时器拦截所谓定时器找到行动的执行时间。
,也是我试图与JSTL,OGNL标签来比较jsp页面渲染时间的性能。在我的情况下,OGNL取得了最佳表现。
有基准由你提到的performance.The一个应用程序的不同方面似乎令人非常震惊的差别是有些25倍。 不确定你设置Action的执行是什么意思?所以它很难提出任何特别的事情。 我们喜欢9-10 S2应用程序,而且目前它们都没有任何性能问题。
我的建议是使用一些分析工具,并得到日其特定块导致应用程序很慢,你身边总是可以按照提示在其他答案提示信息。
是否使用的是S2的版本?
这就是我所说的“建立行动的执行”。从剖析拦截器:'[0ms] - 创建DefaultActionProxy:[0ms] - actionCreate:currenttime [359ms] - invoke:[359ms] - 拦截器:异常......所有执行时间都花在创建操作上。 – 2012-02-25 13:59:20
@ D.Laroche:你的问题我相信已经解决了,因为S2在开发模式时倾向于为每个请求重新加载每个配置和其他东西 – 2012-02-25 15:01:15
“struts.dev = false”做到了。我现在回到我之前使用Struts1的时机。非常感谢。 – 2012-02-25 12:26:55