Log del server di stato ID evento 1072 o ID evento 1076

Questo articolo consente di risolvere il problema in cui l'ID eventi di log 1072 o 1076 nei server di stato.

Versione originale del prodotto: Microsoft .NET Framework
Numero KB originale: 308097

Sintomi

Uno degli eventi seguenti viene visualizzato nel registro eventi dell'applicazione del computer server di stato quando si usa la modalità server di stato dello stato Stato sessione in ASP.NET. Ciò si verifica quando il server Web o il computer che esegue il server di stato è sottoposto a stress elevato.

Tipo di evento:Errore
Origine evento:ASP.NET 1.0.3306.0
Categoria di eventi:Nessuna
ID evento:1072
Data:12/9/2001
Ora:16:00:25
Utente: N/D
Computer: ComputerName
Descrizione:
Errore durante l'elaborazione di una richiesta nel server di stato. Calltack principale: EndOfRequest. Codice di errore: 0x80072746

Nota

La versione di .NET Framework menzionata nel messaggio di evento precedente è una versione non definitiva di .NET Framework 1.0.

Tipo di evento:Errore
Origine evento:ASP.NET 1.0.3306.0
Categoria di eventi:Nessuna
ID evento:1076
Data:12/9/2001
Ora:16:02:05
Utente: N/D
Computer: ComputerName
Descrizione:
Il server di stato ha chiuso una connessione TCP/IP scaduta. L'indirizzo IP del client è 127.0.0.1. L'operazione di lettura scaduta è iniziata il 12/09/2001 16:02:00.

Nota

La versione di .NET Framework menzionata nel messaggio di evento precedente è una versione non definitiva di .NET Framework 1.0.

Tipo evento: Errore
Origine evento: ASP.NET 1.1.4322.0
Categoria di eventi: Nessuna
ID evento: 1078
Data: 6/10/2005
Ora: 11:03:47
Utente: N/D
Computer: ComputerName
Il server di stato ha chiuso una connessione TCP/IP scaduta. L'indirizzo IP del client è 127.0.0.1. L'operazione di lettura scaduta è iniziata il 06/10/2005 11:03:25.

Causa

Quando si usa la modalità del server di stato dello stato Sessione in ASP.NET, il processo del server Web ASP.NET nel server Web comunica con il server di stato usando WinSocket tramite protocollo TCP/IP (Transmission Control Protocol/Internet Protocol). Per impostazione predefinita, il processo del server Web imposta il valore di timeout di tutte le operazioni TCP/IP di invio e ricezione su 10 secondi. Analogamente, il server di stato esegue anche il timeout di tutte le operazioni TCP/IP di invio e ricezione dopo 10 secondi.

Tuttavia, se il server Web o il server di stato è sottoposto a un utilizzo elevato della CPU (quasi al 100%), un'operazione TCP/IP può richiedere più di 10 secondi e quindi viene annullata prima del completamento. Di conseguenza, viene registrato uno degli eventi indicati in precedenza e la richiesta client di origine ha esito negativo. Il server di stato registra l'ID evento 1072 se il processo del server Web ASP.NET indica il timeout di un'operazione TCP/IP. Se il server di stato esegue il timeout di un'operazione TCP/IP, il server di stato registra l'ID evento 1076.

Risoluzione

Per modificare il valore di timeout dell'operazione TCP/IP per il processo del server Web ASP.NET, modificare l'attributo seguente nel file Machine.config oppure specificare l'attributo seguente nel file Web.config per qualsiasi applicazione Web.

 <sessionState
    stateNetworkTimeout="10"
 />

Ecco come modificare il valore di timeout dell'operazione TCP/IP per il server di stato:

  1. Arrestare il servizio server di stato ASP.NET.
  2. Selezionare Start, selezionare Esegui, digitare Regedt32.exee quindi selezionare OK per avviare Editor del Registro di sistema.
  3. Individuare la chiave seguente nel Registro di sistema: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\aspnet_state\Parameter
  4. Aggiungere un valore DWORD denominato SocketTimeout. Impostare un numero intero positivo per rappresentare il nuovo timeout TCP/IP in secondi.
  5. Uscire dalla Editor del Registro di sistema.
  6. Riavviare il servizio server di stato ASP.NET.

Per gli utenti che riscontrano i problemi indicati nella sezione Sintomi , usare questi metodi per aumentare i valori di timeout nel server di stato e in tutti i server Web a 20 secondi.

Nota

Se il server di stato non è in esecuzione quando si aumentano i valori di timeout nel server Web, la richiesta client scade dopo n secondi, dove n è uguale a un nuovo valore di timeout, anziché i 10 secondi predefiniti.