Tengo un sistema distribuido en el que habrá 1 SQL Server, 1-n servidores de procesamiento y 1-n proveedores de datos (dispositivos de hardware en toda la red). Los datos que se suministran requerirán procesamiento antes de entrar en la estructura de base de datos relacional, realizada por los servidores de procesamiento (como servicios de Windows - código .net para analizar los datos, procesarlos e insertarlos en la estructura relacional).
Para manejar la carga potencial y no ralentizar a los proveedores de datos, quiero implementar una cola, pero no estoy seguro de querer agregar la complejidad de un servidor MSMQ a la mezcla. ¿Existe una buena alternativa a MSMQ, como usar la base de datos (una tabla plana) como cola? ¿.NET brinda soporte inmediato para colas de DB o existe otra opción para hacer colas confiables?
Graciasa MSMQ o no a MSMQ? (o SQL Table como la cola)
EDIT: (Nov 29, 23:30)
suena como SQL Service Broker (SSB) puede hacer el truco.
http://www.netframeworkdev.com/windows-communication-foundation/service-broker-vs-msmq-as-reliable-queueing-mechanism-63981.shtml
EDIT: (30 de noviembre, 7:45 am)
encontrado otro enlace muy útil sobre este tema:
http://social.msdn.microsoft.com/Forums/en-US/sqlservicebroker/thread/52687510-0852-44f3-bfcd-83610d1c1b9a
También estoy buscando en el tamaño máximo/mínimo de los datos que será suministrado. Por encima de su cabeza, ¿alguien sabe el tamaño máximo acomodado por MSMQ y/o SSB?
MSMQ: 4 MB de tamaño del mensaje
SSB: 2 GB de tamaño del mensaje
EDIT: (Nov 30, 8; 15 am)
gran comparación entre MSMQ & SSB aquí:
Good Strategy for Message Queuing?
Especialmente utilice MSMQ transaccional. – Steven