Persistante de la File d'attente de Travail en C#
Imaginer je veux avoir un petit réseau de travailleur drones, éventuellement, sur des threads séparés, et éventuellement sur des processus distincts ou même sur des Pc différents. Les éléments de travail sont créés par un programme central.
Je suis à la recherche d'un produit ou service existant qui va faire tout cela pour moi. Je sais qu'il y a MSMQ et aussi MQSeries. MQSeries est trop cher. MSMQ est notoirement peu fiables. Une base de données soutenu système serait parfait, mais je ne veux pas propre/gérer/écrire. Je veux utiliser un autre système de file d'attente de travail.
Articles Connexes:
- Ici est un question similaire, mais c'est de préconiser la construction d'une attente personnalisée mécanisme.
- La file d'attente que j'aime beaucoup est celui de Google App Engine.
- http://www.codeproject.com/KB/library/DotNetMQ.aspx
- +1 comme j'ai eu la même question en tête. Merci pour le lien pour le GAE tâche de la file d'attente.
- MSMQ sont pas fiables? Pas pour moi. De quoi parles-tu?
InformationsquelleAutor 010110110101 | 2011-08-23
Vous devez vous connecter pour publier un commentaire.
J'ai utilisé Rabbit MQ dans le passé pour un projet de compagnie, vous pouvez l'ajouter à votre liste de File d'attente de systèmes.
Pour autant qu'un cadre pour envelopper la File d'attente, vous pouvez prendre un coup d'oeil à http://www.nservicebus.com/ nous avons fait un couple de projets de base ici au travail avec qui. Et voici un petit exemple pour commencer: http://meisinger2.wordpress.com/2009/11/09/nservicebus-fifteen-minutes/
Si vous suivez quelques règles que vous pouvez utiliser une base de données comme une file d'attente en magasin avec un bon succès, voir À l'aide de tableaux comme des Files d'attente.
SQL Server est livré avec son propre intégré dans message queuing, à savoir Service Broker. Il vous permet d'éviter de nombreux MSMQ pièges quand il s'agit de l'évolutivité, de fiabilité et de haute disponibilité et de reprise après sinistre scénarios.
Servcie Courtier est entièrement intégré dans la base de données (pas de magasin externe, un uniforme de sauvegarde/restauration, une unité de basculement, pas besoin de coûteuses de validation à deux phases DTC entre la banque de messages et de données, un simple T-SQL API d'accès et de programme à la fois les messages et de vos données) et aussi quelques belles caractéristiques uniques, telles que la messagerie transactionnelle avec garantie de Exactement-une Fois-Dans-la livraison de la Commande, corrélation message de verrouillage, l'activation interne etc.
J'ai utilisé avec succès MassTransit dans le passé. Il prend en charge l'utilisation MSMQ ainsi que RabbitMQ.