管理 BAM 事件总线服务

BAM 事件总线服务(也称为跟踪数据解码服务(TDDS)),负责处理存储在源数据库中的跟踪数据(数据流),并将这些数据以便于以后查询的方式持久化保存。

BAM 事件总线服务将商业智能数据传输到 BAM 主导入数据库,并将 BizTalk 健康监控数据传输到 DTA 数据库。 BAM 事件总线服务在 BizTalk 服务中作为子服务运行。

通过在执行期间收集事件数据,然后将数据临时存储在与应用程序状态相同的数据库中(例如 MessageBox 数据库),监视事务应用程序(如 Microsoft BizTalk® Server)的活动。

注释

避免在同一台计算机上创建多个托管跟踪不同 BizTalk 组的应用程序实例。 如果跟踪不同 BizTalk 组的实例存在于同一台计算机上,则无法区分哪些事件属于 BizTalk 管理控制台或事件日志中的哪些 BizTalk 组,因为所有 BizTalk 组都以相同的名称显示。

BAM 事件总线服务读取事件数据,对其进行解码,然后将其存储在MICROSOFT SQL Server™ 数据库中,可在其中轻松查询数据。

BAM 事件总线服务具有以下优势:

  • 事件数据始终与应用程序的状态匹配,并且永远不会公开未提交的进度。

  • 对正在运行的应用程序的性能影响很小,因为事件数据在与应用程序状态更改相同的本地事务中保存的记录数很少。

  • 针对应用程序状态的 SQL Server 存储进一步针对执行性能进行优化。 数据由 TDDS 解码,并存储在单独的数据库中,即 BAM 主导入数据库或 DTA 数据库。 生成报表时,将从数据库查询数据,并影响存储应用程序状态的 Message Box 数据库。

  • 存储事件数据以便查询的工作并不是在应用程序服务器和数据库中完成的。 它将卸载到运行 BAM 事件总线服务和目标 SQL Server 数据库的计算机。

  • 事件数据以低延迟进行处理,从而使 TDDS 查询更快地处理。 BAM 事件总线服务协调其资源,以实现尽可能低的延迟。

    BAM 事件总线服务器通过使用与包含配置信息的中央数据库的连接来协调其资源。 每分钟,每个活动 BAM 事件总线服务都会向中央数据库发送一条消息,其中包含该时间点 BAM 事件总线服务的状态。

    此消息称为心跳消息。 每个 BAM 事件总线服务还会检查需要完成的新工作。 例如,BAM 事件总线服务检查未拥有的会话,例如已添加的 MessageBox 数据库。

    BAM 事件总线会话是指将事件数据从源数据库(例如 MessageBox)传输到目标数据库,该数据库以可供查询的格式存储事件数据。 同一 BAM 事件总线服务可以处理一个或多个会话。

    下图显示了组成 BAM 事件总线服务器池的一组 BAM 事件总线服务器。

    显示一组 BAM 事件总线服务器(构成 BAM 事件总线服务器池)的图像。
    BAM 事件总线服务器池的图示

本节中