Exporter (0) Imprimer
Développer tout

Méthodes de service Web XML asynchrones

Pour améliorer les performances des méthodes de service Web appelant des méthodes longues qui bloquent leur thread, pensez à les exposer en tant que méthodes de service Web asynchrones. L'implémentation d'une méthode de service Web asynchrone permet à ce thread d'exécuter un autre code lorsqu'il est retourné au pool de threads. Cela permet l'exécution d'un thread de plus que le nombre autorisé dans le pool de threads, ce qui améliore les performances et l'évolutivité du système.

Pour une description détaillée de la procédure de conversion d'une méthode de service Web en une paire de méthodes conçues pour un accès asynchrone, voir Comment : créer des méthodes de service Web asynchrones. Pour un autre exemple de code, voir Comment : chaîner des appels asynchrones avec une méthode de service Web.

En général, les méthodes de service Web appelant des méthodes qui exécutent des opérations d'E/S se prêtent très bien à une implémentation asynchrone. Ces méthodes sont, par exemple, celles qui communiquent avec d'autres services Web, qui accèdent à des bases de données distantes, qui effectuent des E/S réseau et enfin celles qui lisent et écrivent dans des fichiers volumineux. Toutes ces méthodes passent la majeure partie de leur temps à s'exécuter dans le matériel, ce qui laisse bloqué le thread exécutant la méthode de service Web. Ce thread peut être libéré pour exécuter un autre code si la méthode de service Web est implémentée de façon asynchrone.

Qu'une méthode de service Web soit implémentée de façon asynchrone ou non, les clients peuvent communiquer avec elle dans ce mode. La communication asynchrone est exposée aux clients .NET dans la classe proxy générée par l'outil de langage WSDL (WSDL.EXE), même si une méthode de service Web est implémentée de façon synchrone. La classe proxy contient les méthodes Begin et End pour communiquer avec chaque méthode de service Web de façon asynchrone. La décision d'implémenter une méthode de service Web de façon asynchrone ou synchrone doit donc être prise en tenant compte des performances.

NoteRemarque

L'implémentation d'une méthode de service Web asynchrone n'a pas d'incidence sur la connexion HTTP entre le client et le serveur hébergeant le service Web. La connexion HTTP n'est ni fermée ni regroupée.

Voir aussi

Ajouts de la communauté

AJOUTER
Microsoft réalise une enquête en ligne pour recueillir votre opinion sur le site Web de MSDN. Si vous choisissez d’y participer, cette enquête en ligne vous sera présentée lorsque vous quitterez le site Web de MSDN.

Si vous souhaitez y participer,
Afficher:
© 2014 Microsoft