Cómo: Enviar mensajes a colas desconectadas

Actualización: noviembre 2007

Hay dos situaciones en las que no se pueden entregar inmediatamente los mensajes a sus colas: cuando el equipo en el que reside la cola no está disponible o cuando el controlador de dominio necesario para enrutar el mensaje no está disponible. Message Queue Server permite controlar estas situaciones para poder continuar el envío de mensajes aunque no se esté conectado a la red ni estén disponibles el equipo o el controlador necesarios. En estos casos, los mensajes se almacenan temporalmente en una cola del equipo local o en un equipo que esté en la ruta de entrega, hasta que los recursos necesarios vuelvan a tener conexión y se pueda completar la entrega.

Por ejemplo, suponga que tiene una cola central que registra los pedidos que envían los representantes de ventas volantes. Los representantes de ventas volantes trabajan sin estar conectados durante la mayor parte del día, registran información de pedidos desde las instalaciones de los clientes y se conectan por medio del teléfono una vez al día para transferir toda su información a la cola central. Dado que se pueden enviar mensajes a colas sin que el remitente esté conectado, el personal de ventas puede enviar sus mensajes inmediatamente después de registrar la información del cliente; el sistema almacena estos mensajes en una memoria caché hasta el momento de realizar la correspondiente llamada al final de la jornada.

El envío de un mensaje a una cola desconectada es prácticamente igual al proceso de enviar un mensaje a una cola disponible. No es necesario realizar ninguna configuración especial para que el componente almacene los mensajes en una cola temporal si la cola a la que realiza el envío no está disponible. Hay dos diferencias principales que conviene tener en cuenta:

  • Si la cola no está disponible pero el controlador de dominio está funcionando, deberá identificar la cola a la que desea realizar envíos por el nombre de formato de la misma, en lugar de hacerlo por el nombre de la ruta de acceso. Cuando una cola está desconectada, el controlador de dominio de la cola no puede resolver correctamente el nombre de la ruta de acceso. Para obtener más información sobre nombres de formato, vea Recomendaciones sobre la referencia a colas.

  • Si establece un intervalo de tiempo de espera en la operación de envío de mensajes, el período de tiempo de espera empezará la cuenta atrás tan pronto como se envíe el mensaje. Esto significa que, mientras el mensaje espera en el equipo local a que la cola esté disponible, el período de tiempo de espera está activo y la hora de vencimiento está próxima. Si desea utilizar el período de tiempo de espera, deberá establecerlo en un intervalo suficientemente amplio para dejar un margen para la entrega o solicitar confirmación negativa para el mensaje, a fin de saber si se ha producido el vencimiento. Para obtener más información sobre cómo solicitar confirmación cuando no se puede entregar un mensaje, vea Cómo: Solicitar la confirmación de mensajes.

Para enviar un mensaje a una cola desconectada

  1. Cree una instancia del componente MessageQueue. Para obtener más información, vea Cómo: Crear instancias de componentes MessageQueue.

  2. Establezca la propiedad Path del componente en el nombre de formato de la cola a la que desea enviar un mensaje.

    Nota:

    Si crea el componente desde el Explorador de servidores, esta propiedad hará referencia automáticamente a la ruta de acceso en lugar de hacer referencia al nombre de formato. Para cambiar al nombre de formato, haga clic en el icono de expansión situado junto a la propiedad Path. En el cuadro de diálogo que aparece, busque y seleccione la cola a la que hace referencia el componente; a continuación, seleccione Nombre de formato en el campo Hacer referencia a la cola por y haga clic en Aceptar.

  3. Envíe el mensaje normalmente.

Vea también

Tareas

Cómo: Solicitar la confirmación de mensajes

Cómo: Enviar mensajes simples

Cómo: Enviar mensajes complejos

Cómo: Crear instancias de componentes MessageQueue

Cómo: Comprobar mensajes en tiempo de diseño

Conceptos

Propiedades predeterminadas de los mensajes

Otros recursos

Enviar y serializar mensajes