如果选择对 WebSphere ESB 进行完整
(这是缺省值)安装,则将获得一个单服务器总线环境。如果此总线环境不适合于您的服务应用程序,则可以创建一种总线环境,并选择它将包含下面哪些总线拓扑:1)位于部署管理器单元中的多服务器总线;2)多个使用不同服务器的单服务器总线;3)用于处理应用程序或链接至 WebSphere® MQ 的其他总线。
执行此任务的目的和时间
如果选择对 WebSphere ESB 进行完整(这是缺省值)安装,则将有一个独立节点位于它自己的管理域(称为单元)中。该节点拥有一个服务器,已将该服务器分配给该单元的
SCA.SYSTEM 总线,供您用来部署 SCA 模块。
如果 SCA 模块只需要一个服务器,则可以使用完整
(这是缺省值)安装的 SCA.SYSTEM 总线。如果服务应用程序需要多个服务器,则需要选择采用哪种总线拓扑。
在部署 SCA 模块之前,应选择
Enterprise Service Bus 需要的总线环境,这是因为总线环境会影响与安装相关的操作,例如:需要创建哪些
WebSphere ESB 概要文件;您想要消息传递引擎使用哪些数据库。
- 可以先为 WebSphere ESB 安装缺省的独立服务器概要文件,并使用所提供的 SCA.SYSTEM 总线来启动,然后在必要时再为更高级的总线环境创建部署管理器概要文件和用于受管节点的概要文件。
- 要在总线环境中使用多个服务器,则需要将一个概要文件用于部署管理器单元中的受管节点。
- 可以在安装 WebSphere ESB 之前选择总线环境,然后安装能为所选总线环境提供最佳支持的概要文件。
除了使用为 SCA 模块提供的 SCA.SYSTEM 总线以外,还可以创建其他应用程序服务器和服务集成总线,以便支持其他应用程序和模块,或者用于连接至 WebSphere MQ 网络。这组主题主要描述如何使用 SCA.SYSTEM 总线来支持 SCA 模块。
在与 WebSphere Application Server 主题的链接中,提供了有关在 WebSphere Application Server Network Deployment 中使用其他服务集成总线的信息。
要选择总线环境,应考虑下列事项以及下面提到的各个副主题中提供的对总线拓扑的描述。
此任务的替代任务
- 考虑您期望已部署到总线上的模块将建立的客户机连接数和吞吐量。
目标是找出客户机感到模块的性能开始恶化的一个临界点:
- 与总线建立的并发客户机连接数;在超过此数目后,如果再建立新的客户机连接,模块的性能就会开始恶化。
- 通过消息传递引擎发送和接收的请求数和应答数;在超过此数目后,如果再尝试通过消息传递引擎发送
请求,性能就会开始恶化。
不可能提供一个适用于所有环境的特定公式,这是因为上述数目取决于运行服务器的主机的特征、已部署的模块的性质以及其他因素。
如果您使用单服务器总线,并且发现客户机连接数即将导致性能恶化或者吞吐量开始急剧下降,则可以通过下列方法来增大该总线环境的容量:
- 在一个独立概要文件中,可以创建多个使用同一服务器的单服务器总线。于是,客户机连接可以分布在多个总线上,但是,请求的吞吐量仍然取决于一个服务器。
- 为了能够建立更多客户机连接和提高请求吞吐量,可以使用分布在多个总线上的多个服务器。(要使用分布在一个或多个总线上的多个服务器,需要为部署管理器单元中的受管节点创建一个服务器概要文件。)
- 考虑在消息传递引擎中传递的请求大小。
每个消息传递引擎都要管理两个内存缓冲区,它们包含请求和与请求相关的数据。如果消息传递引擎在尝试将数据添加至缓冲区时空间不足,消息传递引擎可能就会废弃缓冲区中的一些旧数据,以腾出空
间。
在使用总线期间,您可能会发现请求大小导致消息传递引擎废弃缓冲区中的旧数据超过了可以接受的程度。在这种情况下,可以为该总线添加另一个服务器,以便提供另一个消息传递引擎。或者,可以选择创建多个单服务器总线,而每个单服务器总线使用不同的服务器作为总线成员。每个服务器中的消息传递引擎都使用单独的一组内存缓冲区和单独的数据存储器。(要使用分布在一个或多个总线上的多个服务器,需要为部署管理器单元中的节点创建一个服务器概要文件。)
- 考虑您是否想对各个服务应用程序使用不同的服务质量。
每个总线都对服务质量和其他属性具有唯一的配置。可以选择创建多个总线并为它们配置不同的服务质量,然后将每个模块部署到具有合适配置的总线。
- 考虑您是否想对各个服务应用程序使用不同的服务质量。
每个总线都对服务质量和其他属性具有唯一的配置。可以选择创建多个总线并为它们配置不同的服务质量,然后将每个模块部署到具有合适配置的总线。
- 考虑要在一个总线内使用多个服务器的其他原因。
对于某些应用程序来说,使用一个只包含单个服务器的
服务集成总线就足够了。但是,在一个总线中使用多个服务器(并且每个服务器都提供一个消息传递引擎)具有下列优点:
- 可以将消息传递工作负载分布在多个服务器中。
- 请求者应用程序可以就近处理请求,从而减少了网络流量。例如,如果负责发送和接收的应用程序都在同一个服务器进程中运行,则通过在远程服务器中运行的一个消息传递引擎可能就无法传递在这两个应用程序之间传递的所有请求。
- 提高了在发生系统故障或链路故障的情况下的可用性。这包括排除单个故障点,并且允许在两个服务器之间进行存储转发(如果需要这样做的话)。
- 提高了可伸缩性。
- 能够适应存在防火墙或其他网络限制的情况,上述情况会限制所有网络主机都连接至单个消息传递引擎这种能力。
- 考虑使用多个 SCA.SYSTEM 总线环境的其他原因。
因为每个服务集成总线都具有单独的配置,所以,可以选择多个总线,每个总线都具有适合于不同模块的不同配置;例如,可以将一些总线用于安全的生产环境,而将其他总线用于不安全的测试环境。
还可以选择创建多个总线,以便将各个模块的管理分隔开;例如,可以对组织内部的不同部门使用单独的管理单元和 SCA.SYSTEM 总线,或者将测试设施与生产设施分隔开。
除了 SCA.SYSTEM 总线以外,还可以创建另外的总线供其他应用程序使用,并且可以将它们连接起来以便在总线之间进行消息传递。还可以将属于不同组织的总线连接起来。将总线互相连接起来之后,应用程序就可以向其他总线上的应用程序发送消息,也可以使用其他总线上提供的资源。还可以将已发布的消息分布在多个总线上(如果将总线之间的链路配置为允许这样做的话)。
- 考虑使用非 SCA 服务集成总线的原因。
除了用于 SCA 模块的 SCA.SYSTEM 总线以外,您还可以创建其他服务集成总线,以便支持由模块所提供的服务集成逻辑。例如,提供了
SCA.APPLICATION.cell_name.Bus,用来为随 JMS 绑定一起部署的模块定义 JMS 队列目标和其他 JMS 资源。
还可以创建其他总线并像在 WebSphere Application Server 中那样使用它们;以便应用程序充当 WebSphere ESB 中的服务请求者和提供者,或者将一个总线链接至
WebSphere MQ。还可以使用 WebSphere ESB 部署管理器来管理要与已部署到 WebSphere Application Server 中的应用程序和模块配合使用的各个应用程序服务器。
- 考虑您是否需要不支持 SCA 模块的应用程序服务器。
WebSphere ESB 部署管理器单元可以包括运行 WebSphere Application Server 服务器的应用程序服务器节点。可以将这些应用程序服务器用于 WebSphere Application Server 所支持的应用程序
和模块。除非您想利用 WebSphere Application Server 的服务集成技术,否则不需要将应用程序服务器添加到服务集成总线中。