350 messaggi dal 08 febbraio 2009
Ho un problema "strano".

Ho un servizio WCF con un metodo "serverInfo" che torna al chiamante una stringa contenente la versione del framework del server (usando le variabili di ambiente).
Pertanto il server NON usa un db, NON legge dei files... Nulla che possa tenerlo "bloccato".

A questo punto ho un'applicazione che, premendo un pulsante, visualizza i dati ricavati dal server.

Eseguo il seguente test:

1) Lancio il server in debug (da VisualWebDeveloper - VWD)
2) Lancio il client in debugo (da Visual C# - VC#)
3) Metto un breakpoint sul server all'ingresso del metodo che legge i dati
4) Clicko il pulsante di lettura dati sul client e vedo che VWD si ferma
5) Tolgo il breakpoint dal VWD e lascio che prosegua

Se premo "ogni tanto" il pulsante di aggiornamento, tutto va bene.
Se però lo premo velocemente (più volte in un secondo), l'applicazione si interrompe ed inizia ad uscire per "timeout" (mi dà il classico messaggio in cui dice che si può aumentare il tempo di timeout).

A questo punto chiudo VC# e lascio attivo il server (VWD). Quando parte l'applicazione, rimetto il breakpoint sul VWD per vedere cosa succede quando il client "chiama" il servizio.

Con mia sorpresa, se clicko il pulsante del client, questo esce con timeout ma il VWD non è mai entrato nel metodo...


C'è qualche impostazione che impedisce troppe connessioni in un lasso di tempo basso? Che ne so, magari per questioni di Spyware o altro?

Grazie mille!
350 messaggi dal 08 febbraio 2009
Non so se sia capitato ad altri, però ho trovato la risposta.

Sembra che ci sia un limite di "connessioni" dopo il quale viene auto-bloccato il servizio (ovviamente configurabile dal web.config).

Qui potete trovare qualche dritta in più


http://www.danrigsby.com/blog/index.php/2008/02/20/how-to-throttle-a-wcf-service-help-prevent-dos-attacks-and-maintain-wcf-scalability/
Modificato da JoeRuspante il 11 marzo 2009 17.01 -
Sì ma tu non usi sessioni, non fai connessioni contemporanee e non mi sembra che tu faccia così tante connessioni uno dopo l'altra da simulare un DoS. Che parametro hai dovuto cambiare?
Che tipo di binding usi? Sicuro che al termine di ogni chiamata chiudi il canale?

Ciao

Il mio blog
Homepage

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.