2

我是一名计算机科学专业的学生,​​在企业软件行业拥有罕见的经验。当我阅读企业软件平台时,我主要阅读以下两个:

我所说的“企业软件平台”是指支持与 J2EE 和 WCF 具有相同特性的框架和应用程序服务器:

[ JavaEE ] 提供了部署容错、分布式、多层 Java 软件的功能,主要基于在应用服务器上运行的模块化组件。

WCF是根据面向服务的体系结构原则设计的,以支持由消费者使用服务的分布式计算。客户端可以使用多个服务,并且服务可以被多个客户端使用。服务彼此松散耦合。

  • 这两个“企业软件平台”有什么替代品吗?
  • 对于这个问题领域,其他编程语言的使用率不是更高吗?
  • 为什么没有流行的 C++/Qt 应用服务器?

注意: “应用程序服务器”是指主要用于 GUI 软件的服务器,而不是 Web 服务器/Web 框架。看看Web 服务器和应用程序服务器有什么区别?

4

2 回答 2

4

好吧,您几乎可以将高端 IBM 大型机视为“应用程序服务器”,它们非常受欢迎。

TUXEDO 是一个事务管理器,它支持许多高端应用程序,用许多东西编写,比如 C++。

微软当时拥有 MTS(Microsoft Transaction Server)。它与 C、C++、VB 等对话。

应用程序服务器是一个很好的、模糊的术语。例如,Tomcat 是一个应用服务器。可以说 ZOPE 可以被认为是一个应用服务器。

但是,在我看来,真正将应用程序服务器与“仅代码”区分开来的是事务管理器。例如,我不认为原始 Tomcat 是应用程序服务器,它基本上是一个非常酷的 Web 服务器。

大多数人依赖数据库进行事务,但事务管理器工作在更高级别,数据库只是参与者。事务管理器是应用服务器提供的服务和中间件方面的大量繁重工作发生的地方。事务在业务流程中非常重要。

Java EE 具有事务管理器。我不知道有任何其他“免费”系统提供能够进行分布式事务的事务管理器。正如我所提到的,大多数人都依赖数据库并停在那里。

有几个事务管理器支持 Java JTA(Java EE 服务器内部兼容 JTA),这就是 Spring 为了提供事务服务而插入的。(Spring 只是一个框架,它本身不是服务器。)

将 TM 添加到 OS 后,整台机器就可以成为应用服务器。这就是 MTS 为 Windows 所做的。

Java EE 应用程序服务器之所以脱颖而出,是因为它们将这些服务中的大部分设为一流(线程池、对象分配、数据库池、事务等)。许多操作系统提供所有这些服务,至少在进程级别。但是人们并不在意将整台机器专门用于一项任务,并且不得不调整操作系统来为单个应用程序提供服务。但是,所有这些能力都在那里。

添加现代 VM 系统和专用的“单任务”操作系统实例更有意义。“这个 Linux VM 处理我的 DNS”、“这个 Linux VM 处理我的电子邮件”等。所以,操作系统可能会重新成为一个专用的应用程序服务器。

于 2010-05-12T00:15:47.617 回答
1

Spring.py可用于 Python。

于 2010-05-11T23:58:14.007 回答