Proveedores de eventos personalizados

Los proveedores de eventos personalizados son componentes personalizados que envían datos de eventos a las aplicaciones de Notification Services. Al desarrollar un proveedor de eventos personalizado, debe determinar el tipo de proveedor de eventos que desarrollará, el origen de los datos de eventos y la API utilizada para enviar los datos.

Tipos de proveedores de eventos personalizados

Los proveedores de eventos personalizados pueden ser alojados o no alojados (independientes). Los proveedores de eventos alojados son ejecutados por el host del proveedor del motor de Notification Services.

Los proveedores de eventos alojados pueden resultar más fáciles de desarrollar, puesto que son capaces de aprovechar el host del proveedor de Notification Services. Además, los proveedores de eventos alojados se pueden habilitar y deshabilitar al igual que otros componentes de Notification Services. Para obtener más información acerca del desarrollo de proveedores de eventos alojados, vea Desarrollar proveedores de eventos alojados.

Los proveedores de eventos no alojados funcionan fuera del sistema Notification Services. Resultan útiles si tiene una infraestructura que desea utilizar para enviar eventos o si desea enviar eventos a petición. Para obtener más información acerca del desarrollo de proveedores de eventos no alojados, vea Desarrollar proveedores de eventos no alojados.

Recopilar datos de eventos

Existen varias formas de recopilar datos. Por ejemplo, puede consultar una base de datos, analizar un archivo XML o enviar datos a través de un formulario de Microsoft Windows o Web. El desencadenador para recopilar datos puede ser una acción de la aplicación que inserta datos en el proveedor de eventos o el sondeo programado de un origen de datos.

El conocer el origen de datos, el formato y el modelo de colección ayuda a elegir una API de envío de eventos.

Diferentes API de envío de eventos

Cuando haya determinado el origen de datos, puede elegir una API de envío de eventos. Notification Services dispone de tres API de envío de eventos:

  • Si los datos están disponibles en XML, puede utilizar la clase EventLoader para escribir uno o más eventos del origen de datos XML en la base de datos de aplicación. El proveedor de eventos FileSystemWatcher integrado utiliza la clase EventLoader.
  • Si los datos están en una base de datos de SQL Server, puede utilizar los procedimientos almacenados de envío de eventos para escribir eventos individuales o recopilar y enviar los datos mediante una consulta Transact-SQL. El proveedor de eventos integrado de SQL Server utiliza estos procedimientos almacenados.
  • Si tiene cualquier otro origen de eventos, puede utilizar la API de envío de eventos administrada. Con esta API, crea un objeto Event para cada evento y, a continuación, utiliza un objeto EventCollector para recopilar los eventos en un lote y enviarlo a la base de datos de aplicación.

En cada una de estas API, los eventos se envían a la base de datos en lotes. Sólo son visibles para la aplicación cuando se confirma el lote de eventos.

El diagrama siguiente ilustra estas API de envío de eventos:

Arquitectura de procesamiento de eventos

Usar proveedores de eventos personalizados

Para usar un proveedor de eventos personalizado, debe declararlo en la definición de la aplicación. Para obtener más información, vea Definir proveedores de eventos.

Vea también

Conceptos

Usar la API administrada de envío de eventos
Usar la API XML EventLoader
Usar procedimientos almacenados de envío de eventos

Otros recursos

Desarrollar un proveedor de eventos personalizados

Ayuda e información

Obtener ayuda sobre SQL Server 2005