2012-03-19 11 views
11

Ho un'intranet sito Sitecore impostato su IIS 7 che getta casualmente il seguente messaggio di erroreErrore HTTP 503.2 - Servizio non disponibile. L'impostazione serverRuntime @ appConcurrentRequestLimit è superato

HTTP Error 503.2 - Service Unavailable 
    The [email protected] setting is being exceeded. 

Per risolvere questo problema, ho fatto seguenti modifiche

  • Aumentata la lunghezza della coda del pool di applicazioni myrjetAppPool da 1000 a 65535.
  • Modificato Machine.Config per aumentare la proprietà requestQueueLimit dell'elemento ProcessModel su 100000
  • Aumento appConcurrentRequestLimit a 10000 eseguendo

    C:\Windows\System32\inetsrv\appcmd.exe set config /section:serverRuntime /appConcurrentRequestLimit:100000 
    

ma sto ancora ricevendo lo stesso errore. Qualsiasi aiuto è molto apprezzato.

+0

Quanto traffico ottiene il server? Dai un'occhiata ai contatori delle prestazioni per quel pool di applicazioni e facci sapere cosa scopri. –

+0

Qualche risultato su questo? –

+0

@PaulGeorge Scusate per il ritardo, in realtà gli sviluppatori hanno scoperto che c'era un problema con il pacchetto a causa del quale alcune pagine ricevevano 2 milioni di richieste al giorno e questo ha causato il problema. Una volta che gli sviluppatori hanno risolto il problema, le cose sono andate a posto. – Phoenix

risposta

4

Indagare i riferimenti nell'URL collegato a "MaxConcurrentReqeustsPerCPU" che potrebbe essere necessario impostare creando una nuova chiave di registro, a seconda del sistema operativo e del framework.

http://blogs.msdn.com/b/tmarq/archive/2007/07/21/asp-net-thread-usage-on-iis-7-0-and-6-0.aspx

Come già commentato - verificare l'effettivo numero di richiesta concorrente utilizzando i contatori delle prestazioni per determinare quali limitare si sta colpendo vale a dire che potrebbe essere un limite di 5000 o forse 12 (per CPU).

Modifica: Mi rendo conto che potrebbe sembrare che sto parlando di un'impostazione diversa interamente, ma credo che ci sia una sovrapposizione qui.

5

Si può controllare per vedere dove stanno andando tutte le discussioni. Abbiamo avuto occorrenze in cui i thread per le risorse della libreria multimediale erano sospesi e bloccavano la coda.

In Gestione IIS, selezionare il nodo server dall'albero, quindi l'icona della funzione "Processi di lavoro", quindi fare clic con il pulsante destro del mouse sul pool di applicazioni di interesse e selezionare "Visualizza richieste correnti". Potresti scoprire che qualcosa si sta bloccando. A volte, su questo schermo, qualche volta mi capita di colpire F5 in rapida successione per vedere la velocità delle richieste (ovviamente Performance Monitor è migliore per visualizzare le metriche ma non ti dirà quali URL vengono elaborati).

Problemi correlati