`
sliverfancy
  • 浏览: 8949 次
文章分类
社区版块
存档分类
最新评论
阅读更多
做了个简单的测试.
1.用webwork做了个action,直接导入到SUCCESS.
2.用struts做了个action,直接导入到SUCCESS.

然后用LoadRunner测试,设定用户数30个,一开始就30个.开始以后观察发现:
1.webwork的最高His/Second为170
2.struts的最高His/Second为480

有哪位大侠能够告诉我为啥差别这么大,还是可能我的webwork的配置有问题.
我在这个action上面没有添加任何拦截器.
<package name="aaa" extends="webwork-default" namespace="/aaa">
这个模块继承于webwork-default,我将webwork-default.xml里面的<default-interceptor-ref name="defaultStack"/>也删除了,也就是说现在没有经过任何拦截器的.

谁能.若是差别这样巨大,那么我们这个可能用户访问量巨大的网站就不能用webwork了,是吗?
分享到:
评论
5 楼 sliverfancy 2007-01-16  
嗯...难怪robbin说我的测试方法不符合具体的应用场景。谢谢你。有空我在做做复杂一些的测试。
4 楼 iseeiconquer 2007-01-15  
我说的就是引用文档资料里的(官方有webwork和struts的对比).
这已经能得到很好的解释了.对于简单的请求处理,struts确实会有一些速度上的优势,但如果涉及到共享资源,线程安全等方面struts就不一定快了,例如,你有30个请求同时对一个action发出,而这个action里面有牵涉到数据库连接的操作,那么由于struts只有一个action实例来处理这些请求,它就必须对数据库连接进行线程保护,也就是说,它必须一个一个来处理这30个请求,速度就会慢下来了;而webwork能够同时生成多个action实例,(当然这会产生垃圾回收,另外生成对象本身也是个消耗较多的操作,但这并不影响整体的优势).在这种情况下,webwork就会快很多了,另外webwork还有很多其他优势的,这也是struts2.0以后和webwork合并的原因.
3 楼 robbin 2006-12-28  
这个问题论坛已经讨论过很多遍了,没有什么好说的,先搜索。

再者你的测试方法也不符合具体的应用场景。如果你要找信心的话,可以确切的告诉你,Google就在用webwork。
2 楼 sliverfancy 2006-12-28  
我不知道管理员吧我这篇帖子移到新手区的原因.关于iseeiconquer所提供的帮助,我表示感谢.但是我想这段话我在webwork的官方文档已经找到了同样的解释.但是我想这并不能成为答案.为了大家不能一同探讨一下呢.也许是我提问的方式有问题.或者我测试的方式有问题.但是真的希望能有哪位能帮我解释一下这个问题,已经困扰半年之久了.
1 楼 iseeiconquer 2006-12-27  
Struts Action在处理所有的请求时都只有一个实例.WebWork Actions 为每个请求初始化一个实例,webwork 中Servlet 容器每次处理请求时,都会生成许多将被丢弃的对象,但并没有证据证明更多的对象会产生性能或者垃圾回收问题.另外需要考虑的一个问题是线程安全.

相关推荐

    WebWork2.0讲解说明

    相比于Struts1,WebWork2.0提供了更优的性能和更灵活的设计。虽然后来WebWork与Struts合并成Struts2,但WebWork2.0的理念和技术仍在Struts2中得到体现。与Spring MVC相比,WebWork2.0在轻量级和快速开发方面具有优势...

    WebWork docs 2 -- webWork 详细的说明文档

    WebWork是一个基于Java的轻量级MVC(Model-View-Controller)框架,它为构建高性能、可维护的Web应用程序提供了强大的支持。WebWork docs 2 是一套完整的WebWork框架的详细说明文档,包含了开发者在使用WebWork时...

    webwork_框架文档

    `Interceptor`是WebWork中的另一个关键概念,它允许在Action执行前后插入自定义逻辑,例如验证、日志记录、性能监控等。 WebWork的类型转换功能是其一大亮点,它可以自动将HTTP请求参数转换为Action类的属性类型,...

    webWork

    WebWork是由Apache软件基金会维护的一个项目,它提供了一种轻量级、高性能的方式来构建动态Web应用。WebWork的设计理念是将业务逻辑与表现层分离,以提高代码的可维护性和可重用性。它使用Action类作为模型,处理...

    WebWork_开发指南

    - **XWork 拦截器体系**:XWork 提供了一套强大的拦截器体系,用于在 Action 执行前后进行各种预处理和后处理操作,如日志记录、性能监控等。 - **输入校验**:WebWork 支持多种形式的输入校验,确保用户输入的数据...

    webwork的jar包

    版本2.2.7是一个稳定版本,包含了一些重要的bug修复和性能优化。`webwork-2.2.7.jar` 文件是WebWork 2.2.7的核心库,包含了运行WebWork应用所需的所有类和资源。而`webwork-src-2.2.7.jar` 文件则包含了源代码,这...

    webwork.pdf

    WebWork 2.0的显著特点是它被拆分为两大部分:WebWork 2.x和XWork 1.x,这种分离不仅提升了框架的灵活性,还增强了其扩展性和性能。 #### 架构创新 WebWork 1.x版本在设计上与Struts框架类似,采用的是紧密耦合的...

    webwork,tomcat源码

    WebWork和Tomcat是两个在Java Web开发中非常重要的组件。WebWork是一个基于Action的MVC(模型-视图-控制器)...同时,这种实践性的学习方式也能锻炼开发者解决问题的能力,为成为高级Java Web开发者奠定坚实的基础。

    WebWork2配置

    WebWork2是Struts的替代品,它提供了更强大的功能、更好的性能以及更优雅的API。在这个“WebWork2配置”主题中,我们将深入探讨如何设置和优化WebWork2框架,以便在你的项目中实现高效且可维护的代码。 首先,...

    webwork

    合理的配置能够优化性能,减少耦合,提高应用程序的可维护性和可测试性。 ### 总结 WebWork2作为一款成熟的MVC框架,凭借其灵活的架构、丰富的特性,如Action驱动模式、XWork拦截器体系、输入校验、国际化支持,...

    WebWork 教程

    拦截器(Interceptor)是WebWork中另一项核心功能,它允许在Action执行前后插入额外的行为,如日志记录、性能监控、权限检查等。拦截器框架的灵活性和可扩展性,使其成为WebWork框架中最具吸引力的特性之一。同时,...

    webwork教程

    - 拦截器可以用来进行事务管理、性能监控、安全验证等功能。 - **验证框架**: - WebWork提供了内置的验证框架来简化表单验证过程。 - 可以为Action添加验证规则,自动验证用户的输入数据。 - **XWork配置文件**: ...

    Webwork2_guide

    拦截器可以用来处理如登录检查、日志记录、性能监控等功能,极大地增强了框架的灵活性。 5. **动作(Action)**:在Webwork2中,Action是业务逻辑的主要载体,它们是模型层与控制器之间的桥梁。每个Action对应一个...

    webwork所需jar包

    WebWork 是一个基于Java的轻量级Web应用框架,它为开发...在开发过程中,根据具体需求选择合适的JAR文件,并确保它们版本兼容,能够避免很多潜在的问题。同时,及时更新这些依赖,可以享受到框架的最新特性和性能优化。

    webwork中文 webwork中文参考 webwork中文资料 webwork学习资料

    Interceptor框架是WebWork的一个重要特性,它允许在Action执行前后插入代码,用于实现诸如日志记录、性能监控、权限检查等功能。验证框架则是确保数据完整性和正确性的关键,通过在Action上定义验证规则,可以自动...

    webwork-2.2.5源码包下载.txt

    3. **社区交流**:加入WebWork的开发者社区,如论坛、邮件列表等,可以与其他开发者交流经验、解决问题,这对于深入理解框架的内部机制非常有帮助。 4. **实战演练**:理论学习之后,最重要的还是实践操作。可以...

    webwork例子

    WebWork是一个基于Java的MVC(Model-View-Controller)框架,它被广泛用于构建企业级Web应用程序。这个“webwork例子”压缩包提供了一系列可运行的示例,旨在帮助开发者更好地理解和掌握WebWork框架的核心功能和用法...

    Struts2-Webwork2-DWR

    Webwork2 的许多创新后来被整合到 Struts2 中,进一步提升了其功能和性能。 **Direct Web Remoting (DWR)** 是一种 JavaScript 到 Java 的通信库,它允许在浏览器端直接调用服务器端的 Java 方法,从而实现 AJAX...

    webwork-register.rar_webwork_webwork 验证_webwork spring

    4. **WebWork拦截器**:WebWork的拦截器机制允许在动作执行前后插入自定义逻辑,例如登录检查、性能监控或者数据验证,这在注册过程中尤为重要,可以确保数据的有效性和安全性。 5. **Spring事务管理**:对于涉及...

    webwork2中文文档

    9. **最佳实践与性能优化**:分享一些开发WebWork2应用的最佳实践,以及如何优化应用程序性能,如减少HTTP请求、缓存策略和数据库查询优化。 10. **扩展与整合**:讨论WebWork2与其他技术的集成,如Spring框架、JSF...

Global site tag (gtag.js) - Google Analytics