为什么企业应用程序普遍使用Java+;应用服务器?

为什么企业应用程序普遍使用Java+;应用服务器?,java,enterprise,application-server,banking,Java,Enterprise,Application Server,Banking,我最近一直在研究许多保险和银行业的企业应用程序,有一件事让我大吃一惊:几乎每个应用程序都是用Java编写的,并使用JBoss之类的应用服务器进行部署 为什么这两种技术是企业应用程序领域的默认选择 为什么人们不使用Django这样的新框架/语言/服务器 我怀疑这一选择是出于安全、性能和许可方面的原因,但我不清楚这些确切原因 非常感谢。评论中的链接给出了许多一般性的原因,我看不出哪一个是针对您关于为什么不使用Django的问题的。编译时的类型检查避免了非类型语言所不能避免的一整类运行时错误 评论

我最近一直在研究许多保险和银行业的企业应用程序,有一件事让我大吃一惊:几乎每个应用程序都是用Java编写的,并使用JBoss之类的应用服务器进行部署

  • 为什么这两种技术是企业应用程序领域的默认选择
  • 为什么人们不使用Django这样的新框架/语言/服务器
我怀疑这一选择是出于安全、性能和许可方面的原因,但我不清楚这些确切原因


非常感谢。

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

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

尽管Java最初并不是针对服务器端应用程序/企业级的东西,但一旦它吸引了“企业”人群的注意,它就不断地根据他们的需求发展。 以下是Java的一些优势(与Pythong&Django、Ruby、PHP等相比):

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

尽管Java最初并不针对服务器端应用程序/企业级应用程序,但一旦它吸引了“企业”人群的注意,它就不断地根据他们的需要进行改进。 以下是Java的一些优势(与Pythong&Django、Ruby、PHP等相比):

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

许多公司不信任Django、Python、node.js等新的框架/语言/服务器,因为它们中的一些不够成熟,不值得信任,也不值得认为是成熟的软件。此外,找到一个好的Java开发人员比找到一个好的Rails开发人员更容易


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

许多公司不信任新的框架/语言像Django、Python、node.js之类的es/服务器,因为它们中的一些不够成熟,不值得信任,或者不值得信任,不值得认为是成熟的软件。此外,找到一个好的Java开发人员比找到一个好的Rails开发人员更容易

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