2010-07-20 8 views
0

J'ai un client WCF qui se connecte au serveur dans l'intranet. Le premier appel prend beaucoup de temps et l'utilisateur attend patiemment jusqu'à ce qu'il se termine. Deuxièmement, les troisièmes appels sont au moins 30% plus rapides.WCF: réduction du délai de premier appel. Meilleure pratique

Quelle est la meilleure pratique pour garder le client WCF prêt à appeler? Je pense au thread d'arrière-plan qui peste le serveur de temps en temps (ou peut-être la première fois que l'application démarre) mais peut-être y at-il des façons meilleures/plus simples?

Le service est hébergé par IIS6 avec des liaisons wsHttp (Dual). Le problème est sérieux avec Dual endpoint.

+0

Salut Andrew, vérifiez ici: http://stackoverflow.com/questions/765938/netnamedpipe-varying-response-time-when-communication-is-idling/2821160#2821160 –

+0

Ce service est-il hébergé dans IIS? –

+0

@Darin Dimitrov: oui, mais le pool d'applications n'est jamais inactif. –

Répondre

0

Ce comportement peut être lié au fait que le pool d'applications dans IIS n'est pas chargé en mémoire lorsque la première demande arrive.

+0

Ce n'est guère le cas, car j'ai administré IIS de ne pas fermer le pool et d'observer le retard sur chaque client de l'organisation (il y a une dizaine d'installations). –

+0

Que diriez-vous de la toute première demande après le redémarrage du serveur? –

+0

Merci de l'attention que je vais enquêter un peu plus tard –

Questions connexes