我们公司从现在开始使用eclipse(从0.7版本开始使用WTP)
我目前正在使用WTP 3.2.3评估 eclipse 3.6.2,将替换为WTP 3.0.4,将eclipse 3.4.2作为我们的主要IDE。
我不得不说,我再次对性能感到失望:
WTP 3.2.3似乎比3.0.4慢得多。
实际上,我真的很想知道为什么每个版本的WTP都会变慢。
我们的一个应用程序(动态Web项目)包含大约 4000个Java类和700个jsps/jsp片段。我们只需要基本的WTP功能来开发jsps,xmls和xsd。我们不需要像Dali(Web工具项目真正涵盖了JPA工具?),Libra或visual xml editor这样的高级功能。
另一个有趣的一点是,WTP似乎使减慢了整个IDE的。
SWT在几分之一秒内没有响应,CPU使用率很高(尤其是在构建之后-如果您查看系统作业,即使所有WTP构建 validator ,也有几个jsp/javascript索引器在工作几分钟已被禁用),打开新文件的速度较慢,在项目中导航等。
在仅包含单个核心cpu的旧计算机上尤其可以看到这一点。
最糟糕的是,我感到WTP开发团队不太在意性能
(例如,查看http://wiki.eclipse.org/WTP_Performance_Tests页面-最近一次更新发生在2008年)。
一段时间后,通常会忽略或关闭与基本功能(例如jsp编辑/验证)有关的错误报告和新闻组帖子,例如here,here,and here。
Quo vadis, WTP?
请不要误会我的意思:
我不想怪WTP。
实际上,我相信WTP是一个有才华的团队开发的优秀开源项目。
但是,显然项目的质量保证存在问题,特别是在影响可用性和用户接受度的性能方面。
我只想指出,团队首先应该专注于对大多数用户至关重要的,然后再着手实现 super 重复功能。
我的问题
更新
我想对此问题进行更新,以反射(reflect)当前的答案,并
总结当前结果:
顺便说一句,在theserverside.com上ojit_a的新闻帖子上也提到了这个问题,并附带了其他评论。
“简单的事实是,我们没有花很多时间在性能测试上,因为我们缺乏执行此任务的资源。”
“当然,我们希望对此有所准备而不是被动,但是我们倾向于首先将时间分配给功能性问题。”
因此,这个问题使社区向WTP团队发出了一些公开信:Dear WTP team,
it's obvious that WTP is suffering from major quality/performance issues
which you try to play down or to ignore.
Please invest some time to improve the current situation
at the cost of new features and do everything what's required
to solve the current problems.
E.g. revive the performance team, do some regression tests between
previous releases or ask the community for (precise defined) help.
I am sure that they are enough people willing and able to help here.
If you like, do some kind of poll to get a feeling what should be
the most important scopes of future's WTP releases.
Please, please, listen to your community.
最佳答案
作为回应,我是在WTP中提供JSP,XML和JavaScript源代码编辑功能的项目的负责人。一个简单的事实是,我们没有花很多时间在性能测试上,因为我们缺少执行此操作的资源。当然,我们希望对此有所准备而不是被动,但是我们倾向于首先将时间分配给功能性问题。我们确实有一个采用者产品会定期运行性能回归测试,但是我希望测试现在可以在多核计算机上运行,而且一段时间以来我们还没有收到任何新的危险信号。
在您链接的3个错误中,有2个在您赞美的3.0.4版本之前出现,第三个是格式性能问题(自解决以来),或者是一个针对XML文件的按需输入验证的错误(此错误的修复应具有触发了Xerces,iirc中的内存泄漏,因此我们当时未将其放入)。如果您有具体的项目可以附加到错误中,并说“在X上完成X的速度比Y慢了3.2倍”,我们将尽力找出哪里存在回归。
至于索引器,它们至少应该最终完成。 WTP版本之间存储的磁盘信息已更改,并且这些文件需要重新处理,因此它们再次包含在搜索和(在已实现的地方)重构操作中。初始索引编制完成后,它应该逐步执行并且几乎不会引起注意。您可能会遇到的一种体系结构更改是,对于JSP,需要在单个工作台 session 中为整个工作区建立索引,以将该索引视为“最新”。出于无奈而关闭Eclipse只会延长重新处理的影响。
听起来您公司的标准安装包括整个WTP,而不是滚动自己的自定义发行版。我敦促您检查启动和关闭首选项页面,并关闭所有不希望使用的功能的早期启动。您没有提到使用该功能的兴趣,但是WTP和平台还有其他方面可以使用。您不希望进行验证的任何事情都是验证首选项页面上的公平游戏,以及默认情况下在 Web / JSP文件/验证首选项页面上用于验证JSP片段的设置。
关于java - Eclipse Webtools项目(WTP)及其性能/质量,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5433991/