本测试主要是模拟10,30,100个用户并发登陆的情况。
测试环境:
CPU :core2 6300@1.86ghz
RAM :2GB
OS : winxp pro sp2(en)
Server :tomcat5.1.7(java –Xmx768m,maxThread调为300)
DB :MySQL5
JDK :1.5.0_11
Tool :LR
场景:
模拟10,30,100个超级用户并发登陆,成功登陆后都有权限并自动加载:calculate, clock, workflow, admin, communities, enterprise admin, calendar七个portlet
我在登陆动作submit前定义了集合点,登陆和每个portlet都定义了独立的事务,目的是看每个portlet加载的时间
10 vusers:5 seconds
30 vusers:15seconds
100 vusers:1 minute and 12 seconds
补充说明:这个数据在忽略网络带来的影响下进行的,往往很多在线系统对性能影响最大的还是网络。
简单分析:
由于在忽略网络影响的情况下进行测试,所以吞吐量和点击率的数据就显得不那么具参考价值,不过我们可以算算每次登陆每个用户的网络吞吐量大概是194,915b左右,大家可以结合自己当地的网络情况,计算一下需要多长时间去处理这个bytes。
一个比较乐观的结果是,从10个并发到100个并发都能全部pass
现在我们来看看login这个事务需要多长的时间,这里的login是输入密码后点登陆,从出现正在登陆的进度条,到页头出现的整个过程。我们先看看10个vusers的情况,90 per执行该事务需要1.847s,这个数字我认为很乐观,众所周知,liferay的登陆对用于进行了很复杂的认证,跑了几个process,设置了n次attribute,所以这个处理时间是很快的了。30个并发的时候,90%vusers通过的时间为4.362,这个时间有点长,但是从Std. Deviation这个值看来,不到0.4,所以我认为是相对的稳定,而响应时间都是可以接受的范围里。我们在看看100个并发时,时间高到26.762s,而Std. Deviation的值也比较大,这个时间是不能让人满意的,这点有一大部分的责任应该归咎于tomcat,因为tomcat处理高并发的性能确实不好。
现在我们来看看portlet的加载时间,因为portlet的加载是异步加载的,所以我们来抽取其中一个portlet来进行分析,我这里选择calendar。Calendar的加载时间从0.3 到1.248到8.686s,且标准差的值基本在0.5s范围内徘徊,所以说这个响应时间我认为是在一个可让人接受。
结论:
很多人说portal的性能不好,从上面的报表和分析可以看出,liferay portal的性能是不错的,这个结果和我一些项目的测试结果进行了一些比较,发觉portal的性能和一般的jsp,servlet作为展现层的性能是差不多的,借助于ajax,还有liferay多处缓存的设置,甚至有些性能还比传统的模式要优胜。所以,我认为一个公司启动一个项目的时候,考虑是否用liferay,不应该把评估的标准放在响应速度上,应该放在些别的方面,例如:liferay的学习成本比较高,不单单要先熟悉portal的标准,而且liferay的文档比较小,很多时候都是要直接debug源码去理解liferay。还有你的项目是否适合用portal,因为每个portlet都是代表一个比较独立的应用,如果portlet间的交互很多,用liferay会带来一定的难度,尽管都是可以实现。
另外:tomcat的并发性能确实不好,web的处理性能也不好,我加入了apr,据说可以用在生产环境,但是通过测试,结果也并不理想。
Liferay如果通过tomcat做集群,是件比较痛苦的事情,因为缓存和session同步要付出不少代价。
p.s.个人认为liferay是个优秀的项目,而且他的活动性很强,在很多企业需求功能上都有比较好的解决方案,可以省事不少。但是我认为liferay有点过度设计,代码比较冗余,可能这个很多是历史遗留下来的问题。
希望这篇文章能对大家有帮助:)
分享到:
相关推荐
8. **负载测试与性能基准**:通过工具如Apache JMeter进行负载测试,模拟真实用户行为,找出系统在压力下的性能表现。根据测试结果调整配置,设定性能基准,以便持续改进。 9. **CDN使用**:内容分发网络(CDN)...
在本文中,我们将深入探讨如何配置Liferay 4.2.0版本,这是一个知名的开源企业级门户平台。根据描述,虽然官方文档可能是针对4.3.5版本的,但据称4.2.0版本与之仅有微小差异。我们将重点关注如何在Eclipse集成环境中...
[Packt Publishing] Liferay Portal 性能调优最佳实践 (英文版) [Packt Publishing] Liferay Portal Performance Best Practices (E-Book) ☆ 出版信息:☆ [作者信息] Samir Bhatt [出版机构] Packt Publishing...
Liferay Portal Liferay IDE
最后,文件名“7.7、7月6日liferay”可能是指Liferay的一个特定版本或某个主题的讲解,这可能涵盖该版本的新特性、性能优化、API变更等内容。Liferay的每个版本都有其独特的改进和增强,理解这些变化对于开发者来说...
5. **部署与测试**:将整合后的应用打包成WAR文件,通过Liferay的控制台或者FTP部署到Liferay服务器上。然后在Liferay门户中添加并配置portlet,进行功能测试。 6. **report-form-portlet**:这个文件可能是例子中...
综上所述,Liferay Portal 在各种性能测试中表现出色。它不仅能够处理大量的并发请求,还能有效地管理大量的内容和文档。这使得 Liferay Portal 成为企业级应用的理想选择,特别是在需要高性能和可扩展性的场景中。...
Liferay 中有很多专业术语和缩写,了解这些术语和缩写对于了解Liferay 的工作原理非常重要。 * Liferay 的术语 + Portal + Portlet + Theme * Liferay 的缩写 + CSS + HTML + JSP Liferay 的版本历史 ...
这本指南主要面向Liferay管理员,讲解了系统设置、用户管理、权限控制、性能优化和故障排查等方面的知识。通过阅读,你可以掌握如何高效地管理和维护Liferay环境。 3. 《Liferay Portal 7.x Clustering and High ...
通过细致的配置,管理员能够优化门户性能,增强安全性,同时保证用户体验的流畅性。 #### 五、开发者教程 **1. 开发环境搭建** - **安装开发工具:**为了进行Liferay Portlet开发,开发者需要安装必要的开发工具...
1. **《liferay-4-administration-guide.pdf》** - 这份文档主要讲解了Liferay Portal的系统管理,包括服务器配置、用户管理、权限设置、性能优化等方面。对于那些负责维护Liferay实例的管理员来说,这是必备的参考...
5. **测试与调试**:充分利用Liferay的内置日志和调试工具,确保代码质量。 通过深入学习和实践,Liferay初学者可以逐渐掌握这个强大的门户平台,并能灵活运用到实际项目中,为企业带来高效、协作的工作环境。
书中涵盖了从安装配置到创建自定义portlet、主题和布局的全过程,还讨论了Liferay的安全性和性能优化,帮助读者将Liferay应用于实际项目中。 《Liferay Portal Systems Development》则更侧重于Liferay的系统开发...
- **概述**:Liferay Social Office是Liferay提供的一个增强版组件,旨在进一步提升企业的协作效率。 - **功能**: - 社交化特性:集成社交网络功能,支持用户之间的互动与交流。 - 协作工具:提供在线文档编辑、...
标题 "Liferay扩展环境 Liferay Ext" 涉及到的是Liferay门户平台的一个关键概念,Liferay Ext是用于扩展和定制Liferay功能的核心工具。Liferay是一个开源的企业级内容管理平台,它允许用户根据需求构建自定义的数字...
6.0.6版本在稳定性与性能上有所提升,适合开发者和企业进行二次开发。 2. 安装纯净版Eclipse: Eclipse作为主流的Java开发工具,被用于Liferay的开发环境。安装纯净版Eclipse可以避免插件冲突,确保开发过程顺利。 ...
- **降低风险**:由于Liferay本身已经过严格的测试和验证,因此在使用过程中遇到的问题相对较少,可以有效地降低项目的整体风险。 #### 四、如何利用Liferay构建网站 1. **理解Liferay架构**:了解Liferay的基本...
Liferay是一款开源的企业级门户平台,它提供了丰富的功能和高度可定制性,广泛应用于构建企业网站、社交网络和...通过深入学习这些内容,开发者可以掌握Liferay的框架技术,提升其在企业级门户解决方案中的专业技能。
- **测试 Liferay 服务器**:IDE 允许开发者配置和管理多个 Liferay 服务器实例,方便进行本地测试和调试。 - **生成新的 Liferay 项目**:通过内置的向导,开发者可以快速创建 Portlet、主题或其他类型的 Liferay ...