2012-07-16 3 views
1

J'utilise Nservicebus avec Oracle Queues OAQ de MSMQ. J'ai un problème de fonctionnement avec un serveur dbms qui est arrêté tous les jours en même temps. En particulier, lorsque mon hôte nservicebus ne peut pas obtenir la connexion dbms, il se connecte. Lorsque le dbms est redémarré, mon hôte redémarre ou pas de manière aléatoire! Cependant redémarrer mon hôte tout est ok! Un autre détail est que lorsque mon hôte nservicebus ne peut pas redémarrer, il enregistre un 'message de délai de connexion' toutes les 15 secondes!NServiceBus Délai de connexion au SGBD

Quel est le comportement de NserviceBus lorsqu'il lit à partir d'une file d'attente et que le dbms se bloque? Que pourrais-je faire pour résoudre ce problème?

merci, R

+0

si elles sont sur la même machine peut-être rendre votre service NSB dépendant du service "Oracle Queues OAQ"? – Simon

Répondre

0

Je crains que le problème que vous êtes confronté est le résultat de la conception de votre système. En ayant les files d'attente dans la base de données, lorsque la base de données devient indisponible, les files d'attente le sont également. NServiceBus suppose qu'il est toujours capable de communiquer avec ses files d'attente, comme c'est le cas lors de l'utilisation d'un système de mise en file d'attente distribuée/fédérée comme MSMQ.

Vous pouvez regarder ce que certaines personnes de la communauté ont fait pour lutter contre ce même problème lors de l'utilisation d'IBM MQ (http://code.google.com/p/nservicebuswmq/) - pour finalement revenir à MSMQ sous ces conditions et ensuite la synchronisation avec MQ quand il est revenu en ligne.