扩展配置

可以将 Microsoft SQL Server Notification Services 实例扩展到多台服务器。可以将生成器、事件提供程序和分发服务器置于不同的服务器上。还可以将非宿主事件提供程序和订阅管理应用程序置于不同的服务器上。本主题演示了三个常见的扩展方案:需要更大的分发吞吐量的应用、使用非宿主(独立)事件提供程序的应用以及在 Web 服务器上具有订阅管理应用程序的应用。

分发服务器扩展

对于高吞吐量的应用,分发服务器可能存在滞后现象,这是因为格式化通知可能占用大量处理器资源,并且通知分发要求传递通知的系统具有足够的带宽。为了尽量避免分发瓶颈,可以在应用程序定义中定义多个分发服务器,将分发服务器扩展到多台服务器上。分发服务器可以在分发工作项可用时提取它们。

下图显示了一个将三台服务器用于 Notification Services 的系统:一台服务器运行生成器和宿主事件提供程序,其他两台服务器运行分发服务器。

扩展配置

请注意,生成器与宿主事件提供程序在一起。这是因为生成器进程不会耗用大量 CPU 或磁盘资源;大部分生成器工作在数据库服务器上执行。

ms166402.note(zh-cn,SQL.90).gif注意:
可以让每个应用程序的服务器承载该应用程序的生成器,但每个应用程序只使用一个生成器。

用于格式化和分发的建议 CPU 数量取决于格式化算法和分发日志记录设置的复杂性。如果格式化很复杂,则承载分发服务器的服务器需要更强的处理能力。如果要记录通知文本,则应用程序数据库必须有足够的磁盘空间来存储记录的信息。有关详细信息,请参阅配置分发服务器日志记录

一般的建议是,每台 Notification Services 服务器和数据库服务器应有两个到四个 CPU。数据库服务器应具有足够的磁盘空间,可以存储数据删除进程删除数据之前的事件、通知、订阅和订阅方数据。此外,应将数据库文件、日志文件和 tempdb 数据库置于不同的物理磁盘中。

非宿主事件提供程序

Notification Services 引擎可以运行事件提供程序宿主,该宿主支持随 Notification Services 提供的标准事件提供程序,以及由您或第三方开发的自定义宿主事件提供程序。但是,在某些情况下,使用非宿主(即独立的)事件提供程序会更好或更方便。这些非宿主事件提供程序通常在单独的服务器(如 Web 服务器)上运行。

非宿主事件提供程序使用 Notification Services API 来连接到数据库和提交事件,但并不需要 Notification Services 引擎。在单独的服务器上使用非宿主事件提供程序时,需要安装 Notification Services 客户端组件,并在该服务器上注册实例,但您不需要创建运行 Notification Services 引擎的 Windows 服务。

下面的关系图显示了一个具有远程非宿主事件提供程序的系统。

具有远程事件提供程序的服务器配置

有关部署信息,请参阅部署非宿主事件提供程序

订阅管理界面

与非宿主事件提供程序一样,订阅管理界面使用 Notification Services API 来连接到数据库并提交事件,但不需要 Notification Services 引擎。在承载订阅管理界面的服务器(如 Web 服务器)上,必须安装 Notification Services 客户端组件,并在承载订阅管理应用程序的服务器上注册该实例,但您并不需要创建 Windows 服务。

下面的关系图显示了一个具有远程订阅管理应用程序的系统。

远程订阅应用程序的配置

有关部署信息,请参阅部署订阅管理界面

请参阅

任务

演练:扩展部署

概念

硬件配置
Notification Services 注意事项
数据库注意事项
数据库资源计划

帮助和信息

获取 SQL Server 2005 帮助