Resumen de colas de mensajes
- Temas:
- Configuración
Creado para:
- Experimentado
- Administrador
- Desarrollador
Message Queue Framework (MQF) es un sistema que permite a un módulo publicar mensajes en colas. También define los consumidores que recibirán los mensajes de manera asincrónica. El MQF usa RabbitMQ como agente de mensajería, que proporciona una plataforma escalable para enviar y recibir mensajes. También incluye un mecanismo para almacenar mensajes no enviados. RabbitMQ se basa en la especificación 0.9.1 del Protocolo avanzado de Message Queue Server (AMQP).
El diagrama siguiente ilustra el marco de trabajo de Message Queue:
-
Un publicador es un componente que envía mensajes a un intercambio. Sabe a qué intercambio publicar y el formato de los mensajes que envía.
-
Un intercambio recibe mensajes de los editores y los envía a las colas. Aunque RabbitMQ admite varios tipos de intercambios, Commerce solo utiliza intercambios de temas. Un tema incluye una clave de enrutamiento, que contiene cadenas de texto separadas por puntos. El formato del nombre de un tema es
string1.string2
: por ejemplo,customer.created
ocustomer.sent.email
.El agente de permite utilizar caracteres comodín al establecer reglas para reenviar mensajes. Puede usar un asterisco (
*
) para reemplazar una cadena o un signo de almohadilla (#
) para reemplazar 0 o más cadenas. Por ejemplo,customer.*
filtraríacustomer.create
ycustomer.delete
, pero nocustomer.sent.email
. Sin embargo,customer.#
filtraría porcustomer.create
,customer.delete
ycustomer.sent.email
. -
Una cola es un búfer que almacena mensajes.
-
Un consumidor recibe mensajes. Sabe qué cola consumir. Puede asignar procesadores del mensaje a una cola específica.
También se puede configurar un sistema básico de cola de mensajes sin usar RabbitMQ. En este sistema, un adaptador MySQL almacena mensajes en la base de datos. Tres tablas de base de datos (queue
, queue_message
y queue_message_status
) administran la carga de trabajo de la cola de mensajes. Los trabajos de Cron garantizan que los consumidores puedan recibir mensajes. Esta solución no es muy escalable. RabbitMQ debe usarse siempre que sea posible.
Commerce
- Información general
- Configuración general
- Implementación
- Caché
- Resumen del almacenamiento en caché
- Tipos de caché
- Opciones de caché
- Caché L2
- Redis
- Barniz
- Servidor web
- Configuración de la aplicación Commerce
- Configuración avanzada de barniz
- Borrado de caché
- Caché que borra varias instancias de Varnish
- Verificar configuración de barniz
- Barniz Bloque ESI
- Caché de contenido estático
- Línea de comandos
- Herramienta de línea de comandos
- Comandos comunes
- Habilitar registro
- Administrar la caché
- Administrar indexadores
- Configuración de trabajos cron
- Compilar código
- Modo de funcionamiento
- Iniciar consumidores de cola de mensajes
- Marcador URN
- Informes de dependencias
- Localización
- Administración de configuración
- Vista estática
- Crear enlaces simbólicos
- Ejecutar pruebas unitarias
- Convertir archivos de diseño
- Generar datos para pruebas de rendimiento
- Ejecutar utilidades de soporte (solo Commerce)
- Archivos de configuración
- Rutas de configuración
- Trabajos Cron
- Registros
- Colas de mensajes
- Varios sitios
- Motor de búsqueda
- Seguridad
- Almacenamiento
- Volver a las guías operativas