Ich habe ein verteiltes System, wo es 1 SQL Server, 1-n verarbeitende Server und 1-n Datenlieferanten (Hardware-Geräte über das Netzwerk) sein wird. Die Daten, die geliefert werden, müssen verarbeitet werden, bevor sie in die relationale DB-Struktur gehen - ausgeführt von den Verarbeitungsservern (als Windows-Dienste - .net-Code, um die Daten zu analysieren, zu verarbeiten und in die relationale Struktur einzufügen).
zu handhaben die potenzielle Last und nicht verlangsamen die Datenlieferanten, ich möchte eine Warteschlange implementieren, aber ich bin mir nicht sicher, ob ich die Komplexität eines MSMQ-Servers zu der Mischung hinzufügen möchte. Gibt es eine gute Alternative zu MSMQ, wie die Verwendung der DB (eine flache Tabelle) als die Warteschlange? Bietet .NET eine sofort einsatzfähige Unterstützung für DB-Warteschlangen oder gibt es eine weitere Option für zuverlässiges Einreihen?zu MSMQ oder nicht zu MSMQ? (oder SQL-Tabelle als Warteschlange)
Dank
EDIT: (29. November, 11.30 Uhr)
klingt wie SQL Service Broker (SSB) könnte den Trick tun.
http://www.netframeworkdev.com/windows-communication-foundation/service-broker-vs-msmq-as-reliable-queueing-mechanism-63981.shtml
EDIT: (30. November, 07.45 Uhr)
Gefunden eines anderen sehr nützlichen Link zu diesem Thema:
http://social.msdn.microsoft.com/Forums/en-US/sqlservicebroker/thread/52687510-0852-44f3-bfcd-83610d1c1b9a
Ich bin auch in die max/min Größe der Daten suchen, wird geliefert. Kennen Sie die maximale Größe von MSMQ und/oder SSB?
MSMQ: 4MB Nachrichtengröße
SSB:
EDIT Größe 2GB Nachricht: (30. November, 8; 15am) hier
Großer Vergleich zwischen MSMQ & SSB:
Good Strategy for Message Queuing?
Verwenden Sie insbesondere Transaktions-MSMQ. – Steven