说服客户升级到Java 5

时间:2010-09-04 20:46:47

标签: java arguments upgrade

我们向一些客户销售打包的Java Web应用程序。它基本上是一组servlet,一些SOAP Web服务和一些静态资源。我们不做EJB或任何其他Java Enterprise花哨的东西。

我们的一些客户正在运行IBM WebSphere Application Server v5.1,因此我们仅限于运行时和开发的Java 1.4。当然,我们希望使用Java 5(甚至更好的Java 6)进行开发。在1.4中执行SOAP需要一个外部库(我们使用AXIS,但它正在老化)。我们不能使用enum,拳击,泛型......找到符合1.4标准的第三方库变得越来越难。

客户目前对这种旧但工作良好的设置感到满意。我们希望他们升级他们的Java运行时。在这种情况下,它意味着升级到IBM WAS 6.1或7.0?

我们能告诉他们什么?这对他们有什么影响?

到目前为止,我已经:

  1. 更好的性能,因为JVM在Java 5中更有效(使用Java 6更好)。不过,我不能把数字放在上面。不确定IBM VM是否有很大改进(我们的客户端之一正在AIX上运行)。
  2. 支持。 IBM WAS 5.1只能通过特殊的扩展支持程序来支持。
  3. 他们是大公司,所以他们提前一年以上计划他们的解决方案。他们今天选择了成熟产品,并在几年后部署它。然后该产品在生命结束前几个月。

    请参阅IBM WebSphere Application Server comparison

9 个答案:

答案 0 :(得分:14)

Java 1.5已于2009年11月3日终止。

因此,不再支持1.4和1.5,这意味着没有安全修复。

所以基本上唯一支持的Java平台目前是Java6(又名Java 1.6)

答案 1 :(得分:9)

你可以告诉他们决定的费用。

如果他们继续选择Java 1.4,那么添加新功能将花费$ yyy。如果他们升级,那么添加相同的功能将花费$ xxx。据推测,他们还需要升级他们的系统。如果你能向他们证明新版Java的节省超过他们升级系统的成本,那么他们可以看到,如果他们升级,他们将节省资金。

显然很难给出开发成本的准确值,但是如果你可以估计在更新版本的Java上开发速度会大约快30%(因此便宜30%)那么你可以得到一个至少粗略的数字。

答案 2 :(得分:6)

首先,给定版本的WAS支持的唯一SDK是实际随产品一起提供的SDK(换句话说,IBM不支持在另一个JDK上运行WAS,如果这很重要)。

其次,WAS实际上甚至可能不会使用更新版本的SDK(例如,WAS 6.1不会以IBM JDK 1.6开头)。

  • WAS 5.1:J2EE 1.3,JDK 1.4.2
  • WAS 6.0:J2EE 1.4,JDK 1.4.2
  • WAS 6.1:J2EE 1.4,JDK 1.5
  • WAS 7.0:J2EE 1.5,JDK 1.6

因此,需要更新的运行时可能是大迁移的同义词:JDK和应用程序服务器的资格,管理员培训,平台迁移,应用程序迁移,监视更新,部署工具,回归测试等。对于大保守的公司来说,这通常是一个复杂且极其缓慢的过程。

在您的情况下,您可以考虑分支您的软件并提供不同的版本和:

  • 仅对旧版本进行维护
    • 并定义旧版本的EOL日期(不能维护它Ad Vitam Aeternam)
  • 仅在新版本上提供新功能
  • 为新版本提供更激进的定价

您的客户必须有充分的理由采用新版本,并且必须超出迁移成本。

答案 3 :(得分:4)

您的业务是为了满足您的客户。他们需要(无论是真实的还是感知的)坚持使用过时的平台。

所以,说“是”,但让他们知道你计划在某个特定日期增加维护并升级旧平台的价格。这是完全合理的价格上涨;您需要保持专业知识和设备,以确保您的代码在旧的,不受支持的,可以想象的不安全平台上运行。您通过支持他们当前的基础设施为他们提供真正的价值。

很高兴你不在柴油发动机业务。如果你是的话,你会有很多客户使用世界战争时代的技术。

答案 4 :(得分:2)

去过那里......客户可能很顽固。 我使用了RetroTranslator(http://retrotranslator.sourceforge.net/)和Retroweaver(http://retroweaver.sourceforge.net/)来获得Java 5的功能。但是在性能方面无能为力。

对于Java 1.5 / 1.4 EOL,Java客户可以使用Java for Business程序 - 如果您为它们付费,它们就不是EOL ...

答案 5 :(得分:1)

告诉他们安全性。我不确定太阳是否还能为旧版​​本提供补丁(pavanlimo回答)。

答案 6 :(得分:1)

虽然我同意给出的其他答案,但另一个考虑是你考虑过那种情况吗?您是否以这样的方式编写了应用程序,以便与其他人一起使用?我一直是系统管理员,我最大的抱怨之一就是认为我们应该在准备好后改变我们的IT环境的开发公司数量。当然,如果有2个或更多这样的开发公司向我的网站提供产品,那么就会发生冲突。

您是否以这样的方式编写了应用程序:我可以运行您选择的Java版本和(选择您的编号,但可能大于2)我需要的其他Java版本,通常在同一台服务器上,支持其他同样重要的应用程序?并建议向后兼容是无关紧要的 - 除非我选择他们的版本,否则其他供应商不会支持我。

答案 7 :(得分:0)

也许是因为Java 1.4已于2008年10月30日达到EOL。 因此,他们的安全可能会受到损害!

显示几个示例,其中,由于Java 1.4,安全性实际已被泄露。

他们会非常害怕IMO。

答案 8 :(得分:0)

为什么不去java 6? java 1.4和java 5都已经达到了生命的终点。