J'ai une application MVC ASP.NET qui, dans le document.ready d'une vue, effectue N appels à une action spécifique en utilisant $ .ajax. Cette action, à son tour, appelle une méthode dans un service WCF. Cette méthode accède à une file d'objets, la désinstalle, et retourne finalement un objet, et une propriété dans cet objet est renvoyée par l'action appelante JSON à l'appel $ .ajax, qui la gère via la fonction spécifiée dans le ' paramètre de succès.Problèmes de concurrence WCF
Le problème est, il ne s'exécute pas simultanément, indiquant par les données générées par log4net. La plupart du temps, le même thread gère tous les appels WCF. Et ils sont tous séquentiels, à en juger par les heures de début et de fin. Nous n'obtenons aucune erreur, tous les appels sont exécutés avec succès, mais comme ils ne sont pas concomitants, j'ai un problème de performance.
Important: J'ai décoré le service WCF avec InstanceContextMode = InstanceContextMode.Single, ConcurrencyMode = ConcurrencyMode.Multiple. L'appel $ .ajax est async: true (la valeur par défaut, je ne la change pas). Les services utilisent netTcpBinding.
Des idées?
Utilisez-vous des sessions dans l'action du contrôleur qui appelle le service Web? –
Pas du tout, j'ai tendance à éviter les sessions. – viniciushana