Dzwonię do usługi .net z mojej aplikacji .net, zarówno w wersji 4.0. Podczas wykonywania programu, po raz pierwszy usługa sieciowa ma wywoływaną metodę, wywołanie trwa ~ 10-12 sekund. Kolejne połączenia trwają ~ 1-2 sekundy. Kolejne wywołania, nawet po odtworzeniu instancji odwołującej się do sieci, trwają nadal ~ 1-2 sekundy. Po ponownym uruchomieniu aplikacji WinForm pierwsze opóźnienie połączenia występuje ponownie, ale kolejne wywołania są responsywne.Pierwsze wywołanie usługi sieci .net jest powolne.
Wystąpienie odwołania do strony internetowej jest tworzone przed wywołaniem połączenia i nie jest częścią opóźnienia.
XmlSerializers dla aplikacji winforms są generowane (i używane, o ile wiem, ale nie jestem pewien, jak to zweryfikować).
Opóźnienie nie występuje z powodu kompilacji pierwszego uruchomienia po stronie usługi WWW. Jest to serwis internetowy, który jest używany przez cały dzień, a jego zawartość pozostaje w pamięci. O ile widzę, opóźnienie występuje po stronie klienta lub między klientem a serwerem dla tego pierwszego połączenia, ale nie dla kolejnych wywołań.
Nie jestem pewien, co sprawdzić dalej. Jakieś pomysły?
Należy pamiętać, że pierwsza rozmowa będzie wolniejszy, jednak nie powinno być powolne. – tier1
Podejrzewam, że odpowiedź prawdopodobnie znajduje się gdzieś w tym zestawie pytań/odpowiedzi: http://stackoverflow.com/questions/6988981/webclient-is-very-slow W szczególności szukam problemów z proxy. – spender
Czy masz "Automatycznie wykryj ustawienia" swojego proxy w opcjach internetowych na maszynie z wadami? – spender