- mongodb - 在 MongoDB mapreduce 中,如何展平值对象?
- javascript - 对象传播与 Object.assign
- html - 输入类型 ="submit"Vs 按钮标签它们可以互换吗?
- sql - 使用 MongoDB 而不是 MS SQL Server 的优缺点
我们公司已经使用 eclipse 好几年了(我们从 0.7 版开始使用 WTP)
我目前正在评估 eclipse 3.6.2 与 WTP 3.2.3,它应该将 eclipse 3.4.2 替换为 WTP 3.0.4 作为我们的主要 IDE。
我不得不再次说,我对性能问题感到非常失望:
WTP 3.2.3 似乎比 3.0.4 慢很多。
事实上,我真的很想知道为什么每次发布 WTP 都会变慢。
我们的一个应用程序(动态 Web 项目)包含大约 4000 个 java 类和 700 个 jsps/jsp 片段。我们只需要基本的 WTP 功能来开发 jsps、xmls 和 xsd。我们不需要像 Dali 这样的高级功能。 (webtools 项目 真的应该涵盖 JPA 工具吗?),Libra或 visual xml editor首先。
另一个有趣的点是 WTP 似乎减慢了整个 IDE。SWT 在几分之一秒内没有响应,cpu 使用率非常高(尤其是在构建发生之后 - 如果您查看系统作业,几个 jsp/javascript 索引器正在工作几分钟,即使所有 WTP 构建 validator 已被禁用)、打开新文件速度较慢、浏览项目等。
这在只包含一个核心 cpu 的旧机器上尤其明显。
最糟糕的是,我感觉 WTP 开发团队不太关心性能(例如,查看 http://wiki.eclipse.org/WTP_Performance_Tests 页面 - 最后一次更新发生在 2008 年)。
关于基本功能(例如 jsp 编辑/验证)性能的错误报告和新闻组帖子通常会在一段时间后被忽略或关闭,例如:here , here , and here .
请不要误会我的意思:
我不想责怪 WTP。
事实上,我相信 WTP 是一个优秀的开源项目,由一个优秀的团队开发。
但显然项目的质量保证存在问题,尤其是在影响可用性和用户接受度的性能方面。
我只想指出,团队应该首先关注对大多数用户来说必不可少的事情,然后再努力实现 super 功能。
我的问题
更新
我想对此问题进行更新以反射(reflect)当前的答案和总结一下目前的结果:
许多用户或多或少地提示相同的问题,所以我认为这些问题已得到证实。
顺便说一句,theserverside.com 上的一篇新闻文章也提到了这个问题。 附加评论。
负责的 WTP 项目负责人 nitind 就 WTP 的现状发表了一篇值得注意的帖子,我想引用一下:
“一个简单的事实是,我们没有花太多时间进行性能测试,因为我们缺乏这样做的资源。”
“当然,我们更愿意主动而不是被动应对,但我们倾向于首先将时间分配给功能性问题。”
所以这个问题有点变成了某种社区致 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 中的内存泄漏,因此我们当时没有将其放入)。如果您有具体的项目可以附加到错误上并说“在 3.2 中执行 X 的速度要慢 Y 数量”,我们将尽我们所能找出哪里存在回归。
至于索引器,它们至少应该最终完成。存储的磁盘信息在 WTP 版本之间发生了变化,这些文件需要重新处理,以便它们再次包含在搜索和(在实现的情况下)重构操作中。一旦初始索引完成,它应该会逐渐增加并且几乎不会被注意到。您可能遇到的一种架构变化是,对于 JSP,整个工作空间需要在一个单个工作台 session 中建立索引,以便将该索引视为“最新的”。出于沮丧而关闭 Eclipse 只会延长重新处理的影响。
听起来贵公司的标准安装包括整个 WTP,而不是滚动您自己的自定义分发。我强烈建议您检查启动和关闭首选项页面,并关闭您不感兴趣的任何功能的提前启动。您提到的没有任何兴趣使用该工具,但是 WTP 和平台的其他领域可以使用。 Validation 偏好页面上的任何您对验证不感兴趣的东西都是公平的游戏,以及在 Web/JSP 上默认验证 JSP 片段的设置文件/验证首选项页面。
关于java - Eclipse webtools 项目 (WTP) 及其性能/质量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5433991/
我想在文件系统上手动创建文件夹/文件,以便在 eclipse 的工作区中创建新项目,并在启动 eclipse 并选择工作区时显示在项目资源管理器中。 执行此操作需要创建哪些文件,它们需要位于何处? 请
我正在关注these instructions ,但在运行 mvn eclipse:eclipse 等命令时遇到问题。 我应该如何以及在哪里运行该命令? 我的设置: Windows 7 32 位 面向
是否有任何命令可以在不实际启动 eclipse 的情况下创建 eclipse 工作区?我希望该命令成为脚本的一部分。创建工作区后,将对其进行配置(例如文本编码),然后用于将项目导入到 RTC。我知道下
我想为 Eclipse 插件创建一个自动安装程序(即不通过“更新管理器”)。我的场景很简单:用户关闭 Eclipse,将下载的 JAR 放入 dropins 文件夹,启动 Eclipse,其余的过程是
每当我们想要使用现有源位置创建 Eclipse 项目时,我们将选择现有源位置(根)作为项目位置。 Eclipse 将在该源的根目录中创建所有项目特定文件。 现在,出于某种原因,如果我们想用不同的设置重
可能被问过多次; 有没有办法从控制台(Linux 或 Windows)刷新 Eclipse 工作区文件夹。 我知道有 Ant 任务可以做到这一点。但很想知道是否有命令行技巧。 最佳答案 不,您能做的最
我说的是工具栏上的小图标。 网络上似乎没有任何这样的问题,它们都指的是 android 或自定义应用程序,而不是与 eclipse 捆绑在一起的图标。 我想知道是否有人尝试过这个,或者可以告诉我它不值
如何使用 Eclipse 比较两个文件? (目前我正在使用 WinMerge 。) 最佳答案 要在 Eclipse 中比较两个文件,请首先在 Project Explorer/Package Expl
我正在尝试将我在一个带有数据库的 Eclipse JEE6 项目中所做的所有工作转移到另一个 Eclipse 程序。我知道我将不得不重新配置很多并重建很多库文件,但是尽可能多地传输的最简单方法是什么?
在 Eclipse 中加载我的工作台并启用 TFS 插件时,它挂起。与此类似: http://social.msdn.microsoft.com/Forums/vstudio/en-US/85c1d3
Eclipse 可以通过插件包含许多不同的功能集。您是否在一个 Eclipse 中安装所有插件?或者您是否从 spring 安装 STS,从 adobe 安装 Flex eclipse,甚至从 ecl
我错误地单击了“在 Eclipse 首选项中将目标运行标记为忽略在 Eclipse 构建中(实验)”: 在哪里/如何撤消此操作? 最佳答案 m2e 使用文件 YOUR_WORKSPACE/.metad
我是 Maven 新手。我尝试执行 >mvn eclipse:eclipse -Dwtpversion=2.0。但我收到以下错误: D:\test\CounterWebApp>mvn eclips
当我运行多个 Eclipse 实例时,操作系统不断请求上述权限。 我已经授予了该权限,并且我尝试了多次禁用和启用该权限。 我正在使用, macOS Catalina(版本:10.15.3 (19D76
我有一个 Maven 项目,其中我在项目构建期间使用 wsimport 作为目标来使用 Web 服务。 org.codehaus.mojo
当尝试使用 eclipse 新软件功能安装 eclipse 时,出现此错误: Cannot complete the install because one or more required item
我已经下载了整个 Eclipse Helios/Indigo 版本的源代码。现在我想对它进行一些修改等等。所以我导入了整个源代码,但现在我在编译时遇到了 n 个错误。此外,我正在尝试 RunAs> 插
我已经安装了 eclipse Oxygen 并且正在尝试连接到 Eclipse 市场,以安装插件,它给出了以下异常 - org.eclipse.equinox.p2.core.ProvisionExc
我的 IDE 中安装了来自 Sonatype 的 m2Eclipse 插件。它允许我通过右键单击 pom.xml 文件并导航到“运行方式”菜单来运行各种 Maven 命令(打包、安装等)。 但是,我还
我在 Windows7 64 位上运行 Maven 3 时遇到问题。当我执行maven eclipse:eclipse(我使用maven-eclipse-plugin 2.8)时,maven不会创建任
我是一名优秀的程序员,十分优秀!