【问题标题】:Why are Enterprise Applications Universally Implemented Using Java + Application Servers? [duplicate]为什么企业应用程序普遍使用 Java + 应用程序服务器实现? [复制]
【发布时间】:2013-08-15 06:52:05
【问题描述】:

我最近一直在研究保险和银行业务的许多企业应用程序,有一点让我印象深刻:几乎每个应用程序都是用 Java 编写的,并使用 JBoss 等应用程序服务器进行部署。

  • 为什么这对技术是企业应用领域的默认选择?
  • 为什么人们不使用新的框架/语言/服务器,例如 Django?

我怀疑这个选择是出于安全、性能和许可方面的某些原因,但我并不清楚这些确切原因。

非常感谢。

【问题讨论】:

  • 如果您考虑到“为什么人们不使用新的框架/语言/服务器,例如 Django?”,则不是重复的。 ccdan 和我的回答说明了这不是一个重复的问题。
  • 不是一个骗子,但仍然是一个糟糕的问题:你在问为什么成千上万的人在不同的环境中选择了一种方式而不是另一种方式。

标签: java enterprise application-server banking


【解决方案1】:

虽然 Java 最初并没有针对服务器端应用程序/企业的东西,但一旦它引起了“企业”人群的关注,它就会不断发展以满足他们的需求。 以下是 Java 的一些优势(与 Pythong & Django、Ruby、PHP 等相比):

  • 非常清晰的语法,具有强大的规则和许多安全机制(没有可能导致讨厌的错误的推断/动态类型、很少的神秘符号、各种编译时检查、某些情况下的强制异常处理等 - 许多没有经验的人会对其中一些事情感到恼火 - 但正是这些事情使程序不易出错并且企业人员喜欢它)
  • 非常强大的安全性(尽管有各种媒体报道批评 java 存在可疑漏洞(通常与浏览器小程序有关),但服务器端从未出现过重大安全漏洞 - 这就是银行信任它的原因行业
  • 通用且速度非常快的 VM(Java 应用程序几乎可以与原生 c/c++ 进行纯计算一样快),可以在许多强大的服务器上运行,能够利用它们的全部功能(python、php 和 ruby​​ 甚至不能正确处理多线程)
  • 可以做很多事情的大量框架(从搜索引擎 lucene 等技术框架到 OfBiz、Alfresco 等更多企业的东西)
  • 与其他企业产品(服务器、数据库等)紧密集成
  • 它得到现有最大的软件公司之一 (Oracle) 和其他强大的第三方公司(如 IBM、RedHat 和许多其他公司)的支持
  • 大量专业、高质量的工具(Eclipse、Netbeans、IntelliJ IDEA、JDeveloper 等)

【讨论】:

  • 另请注意,Java 已经“退缩”了很多。更多的人知道如何使用它,大多数主要问题已经找到并解决。它不再是新的和性感的(不再),但这些问题对企业来说是主要的;尤其是较大的。
【解决方案2】:

许多公司不信任新的框架/语言/服务器,例如 Django、Python、node.js 等,因为其中一些还不够成熟而无法被信任,或者还不足以被视为成熟的软件。此外,寻找优秀的 Java 开发人员比寻找优秀的 Rails 开发人员更容易。

但信任并不是唯一的因素,因为随着公司的发展,解决方案(框架或服务器)的可扩展性可能越来越重要。即:如果您正在运行 SMB,将客户数据存储在 excel 文件中可能是一件事情,但随着客户数量的不断增加,保留此方案将成为一个坏主意。您的框架/服务器/语言也是如此。

【讨论】:

    【解决方案3】:

    评论中的链接给出了许多一般性原因,我看不出哪个是特定于您关于为什么不是 Django 的问题。编译时的类型检查避免了非类型语言不能避免的一整类运行时错误。

    【讨论】:

      猜你喜欢
      • 2015-03-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-07-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-12-01
      相关资源
      最近更新 更多