“Pas de ressources suffisantes pour effectuer l'opération.” MSMQ lors de la transaction contient plusieurs messages
Je suis déplacer une application d'un serveur à un autre et le nouveau serveur renvoie la "fameuse" - "pas de ressources suffisantes pour effectuer l'opération." message lorsque le code tente d'envoyer plusieurs messages d'une file d'attente, le processus est appliqué à l'intérieur d'une transaction (TransactionScope). L'ancien serveur exécute le code correctement et à tous les messages (150 environ) sont envoyés à la file d'attente comme prévu, mais le nouveau serveur ne parvient pas à apporx 27.
Maintenant la taille du message est petite et le nombre de messages dans la file d'attente est égale à zéro.
J'ai lu le " L'Insuffisance Des Ressources? Fuir, fuir! ' article, mais je n'en suis pas sûr comment faire pour changer de machine quotas pour MSMQ.
L'application journal a l'entrée suivante:
Système.De messagerie.MessageQueueException (0x80004005): les ressources sont Insuffisantes pour effectuer l'opération.
Technologie C# & .Net 4.0, serveur win 2003 R2 SP2
Des idées pourquoi je reçois ce?
John, merci pour le heads up
Il apparaît que l'un des messages a été de plus de 4 Mo, une fois trié, il semble bien être au travail
Mon problème est le n ° 7 sur votre blog. Résolu avec l'aide de votre poste fantastique! Merci John.
OriginalL'auteur AwkwardCoder | 2011-03-16
Vous devez vous connecter pour publier un commentaire.
L'un des message a été dépassant les 4 Mo - une fois que cela a été trié tout a fonctionné comme prévu.
John, Merci, tout fait et fait en sorte que ça ne se reproduira pas, il était d'environ la taille d'une image et le fait que nous n'avions pas de mettre une limite supérieure de restriction ou plus important encore, une image de restriction de type...
OriginalL'auteur AwkwardCoder
Juste à ajouter pour le numéro #7 l'espace de stockage et Mitch Réponse.
Votre quota de taille est la taille physique sur le disque et non pas la file d'attente déclarés taille (comme indiqué dans les applications comme QueueExplorer ou de l'analyseur de performances).
Donc, même si vous avez purgé votre file d'attente que vous n'avez pas réellement supprimées à partir du disque (sa destinée à être nettoyé tous les six heures)-
L'emplacement par défaut est C:\Windows\System32\msmq\storage ou l'obtenir à partir du 1er lien dans Mitch réponse.
À nettoyer, vous ne pouvez pas supprimer les fichiers.
Essayer le script ci-dessous (enregistrer en tant que myScript.vbs).
Exécuter ce en tant qu'administrateur à partir de l'invite de commande à l'aide de:
cscript myScript.vbs
Après ce nos fichiers supprimés à partir de 1 go à environ 50 mo, même si les octets dans les files d'attente déclarés 40 mo.
de crédit de fil: https://groups.google.com/forum/#!topic/microsoft.public.msmq.performance/jByfXUwXFw8
OriginalL'auteur Choco Smith
Si c'est le Quota de problème (#7 dans cet article): Définir le Message de Taille de Stockage pour les Ordinateurs
Comment définir les quotas d'ordinateur et de quotas de file d'attente dans Microsoft Message Queuing
L'Administration De Message Queuing Opérations
OriginalL'auteur Mitch Wheat