Gestione del database delle code

 

Si applica a: Exchange Server 2007 SP3, Exchange Server 2007 SP2, Exchange Server 2007 SP1, Exchange Server 2007

Ultima modifica dell'argomento: 2008-03-11

Una coda è una posizione temporanea per i messaggi in attesa di passare alla fase successiva dell'elaborazione. Ogni coda rappresenta un insieme logico di messaggi che vengono elaborati da un server di trasporto in base a un ordine specifico. Le code sono presenti solo sui server in cui è installato il ruolo del server Trasporto Hub o Edge Transport.

Microsoft Exchange Server 2007 utilizza il database ESE (Extensible Storage Engine) per l'archiviazione dei messaggi in coda. Precedentemente noto come JET, ESE è un metodo che definisce un'API di livello basso per le strutture database sottostanti in Exchange Server.

Cenni preliminari sulle code

Nella tabella 1 sono elencate le code presenti su un server Trasporto Hub o Edge Transport e le relative caratteristiche.

Tabella 1   Code presenti su un server Trasporto Hub o Edge Transport

Nome coda Ruolo del server Numero di code sul server

Coda di recapito delle cassette postali

Trasporto Hub

Una coda per ciascun server Cassette postali univoco di destinazione.

Coda di messaggi non elaborabili

Trasporto Edge

Trasporto Hub

1

Coda di recapito remoto

Trasporto Edge

Trasporto Hub

Trasporto Edge: Una coda per ciascun dominio SMTP (Simple Mail Transfer Protocol) univoco di destinazione o SmartHost.

Trasporto Hub: Una coda per ciascun sito univoco del servizio directory di Active Directory remoto.

Coda di invio

Trasporto Edge

Trasporto Hub

1

Coda non raggiungibile

Trasporto Edge

Trasporto Hub

1

Cenni preliminari sui file di database delle code

Tutte le diverse code sono archiviate in un unico database ESE. Per impostazione predefinita, il database delle code si trova in C:\Programmi\Microsoft\Exchange Server\TransportRoles\data\Queue.

Come qualsiasi database ESE, il database delle code utilizza i file di registro per accettare, verificare e gestire i dati. Per migliorare le prestazioni, tutte le transazioni dei messaggi vengono scritte prima nei file di registro e in memoria, quindi nel file di database. Il file checkpoint consente di tenere traccia delle voci del registro delle transazioni che sono state salvate nel database. Durante la normale chiusura del servizio di trasporto di Microsoft Exchange, le modifiche del database non salvate contenute nei registri delle transazioni vengono sempre salvate nel database.

Per il database delle code viene utilizzata la registrazione circolare. Questo significa che la cronologia delle transazioni salvate contenute nei registri delle transazioni non viene mantenuta. I registri delle transazioni antecedenti al checkpoint corrente vengono eliminati immediatamente e automaticamente. Pertanto, non è possibile replicare i registri delle transazioni per il ripristino da backup del database delle code.

Nella tabella 2 sono elencati i file che costituiscono il database delle code.

Tabella 2   File che costituiscono il database delle code

File Descrizione

Mail.que

In questo file di database delle code vengono archiviati tutti i messaggi in coda.

Tmp.edb

Questo file di database temporaneo viene utilizzato per verificare lo schema del database delle code all'avvio.

Trn*.log

Questo registro delle transazioni consente di registrare tutte le modifiche apportate al database delle code. Le modifiche al database vengono prima scritte nel registro delle transazioni e quindi salvate nel database. Trn.log è il file di registro delle transazioni attivo corrente. Trntmp.log è il successivo file delle transazioni predisposto creato in anticipo. Se il file di registro delle transazioni Trn.log esistente raggiunge la dimensione massima, Trn.log viene rinominato come Trnnnnn.log, dove nnnn è un numero di sequenza. Trntmp.log viene quindi rinominato come Trn.log e diventa il file di registro delle transazioni attivo corrente.

Trn.chk

Il file checkpoint consente di tenere traccia delle voci del registro delle transazioni che sono state salvate nel database. Questo file si trova sempre nello stesso percorso del file mail.que.

Trnres00001.jrs

Trnres00002.jrs

Questi file di registro delle transazioni di riserva fungono da segnaposto. Vengono utilizzati solo nel caso in cui lo spazio sul disco rigido che contiene il registro delle transazioni è insufficiente per arrestare correttamente il database delle code.

Opzioni per la configurazione del database delle code

Non è possibile utilizzare Exchange Management Console o Exchange Management Shell per configurare il database delle code, per la cui configurazione viene invece modificato il file EdgeTransport.exe.config che si trova in C:\Programmi\Microsoft\Exchange Server\Bin. Il file EdgeTransport.exe.config è un file di configurazione dell'applicazione XML associato al file EdgeTransport.exe. EdgeTransport.exe e MSExchangeTransport.exe sono i file eseguibili che vengono utilizzati dal servizio di trasporto di Microsoft Exchange. Questo servizio viene eseguito su ogni server Trasporto Hub o Edge. Le modifiche apportate al file EdgeTransport.exe.config vengono applicate una volta riavviato il servizio di trasporto di Microsoft Exchange.

Di seguito è riportato un esempio di base della struttura del file EdgeTransport.exe.config:

<configuration>

<runtime>

<gcServer enabled="true" />

</runtime>

<appSettings>

<add key=" ConfigurationOption " value=" Valore " />

...

</appSettings>

</configuration>

La sezione <appSettings> consente di aggiungere nuove opzioni di configurazione o modificare le opzioni di configurazione esistenti. Sono inoltre disponibili molte opzioni di configurazione non collegate in alcun modo al database delle code. Non rientrano tuttavia nelle finalità di questo argomento e quindi non verrannno trattate in questa sede.

Nota

Per i nomi dei parametri nella sezione <add key=../> viene applicata la distinzione fra maiuscole e minuscole.

Le opzioni per la configurazione del database delle code disponibili nel file EdgeTransport.exe.config vengono descritte nella tabella 3.

Tabella 3 Opzioni per la configurazione del database delle code dei messaggi disponibili nel file EdgeTransport.exe.config

Nome parametro Descrizione

QueueDatabaseBatchSize

Questo parametro consente di specificare il numero di operazioni di input/output del database che è possibile raggruppare prima dell'esecuzione. Il valore predefinito è 40. Per ogni messaggio ricevuto viene derivato il costo di I/O del messaggio in base al numero di destiantari e alla dimensione del messaggio stesso. Se il costo di I/O di un messaggio supera il valore specificato nel parametro QueueDatabaseBatchSize, tale messaggio viene immediatamente registrato nel database delle code. In caso contrario, verrà combinato con altri messaggi ricevuti e questi verranno registrati assieme nel database delle code.

Avviso

Non modificare questo parametro, se non viene richiesto da un rappresentante del Servizio Supporto Tecnico Clienti Microsoft.

QueueDatabaseBatchTimeout

Questo parametro consente di specificare il tempo massimo di attesa in millisecondi per il raggruppamento di più operazioni di input/output del database prima dell'esecuzione. Le operazioni di input/output del database vengono eseguite senza attendere oltre se sono soddisfatte le seguenti condizioni:

  • Il numero di operazioni di input/output del database specificate dal parametro QueueDatabaseBatchSize non è stato raggiunto.

  • È trascorso il periodo di tempo specificato dal parametro QueueDatabaseBatchTimeout.

Il valore predefinito è 100.

QueueDatabaseMaxConnections

Questo parametro consente di specificare il numero di connessioni di database ESE che è possibile aprire. Il valore predefinito è 4.

QueueDatabaseLoggingBufferSize

Questo parametro consente di specificare la memoria utilizzata per inserire nella cache i record delle transazioni prima che vengano scritti nel file di registro delle transazioni. Il valore predefinito è 524288 byte.

QueueDatabaseLoggingFileSize

Questo parametro consente di specificare la dimensione massima di un file di registro delle transazioni. Quando viene raggiunta la dimensione massima, viene aperto un nuovo file di registro. Il valore predefinito è 5242880 byte.

QueueDatabaseLoggingPath

Questo parametro consente di specificare la directory predefinita per i file di registro del database delle code. Il percorso predefinito è C:\Programmi\Microsoft\Exchange Server\TransportRoles\data\Queue. Prima di modificare la directory di registrazione del database delle code, assicurarsi che la nuova directory esista. Assicurarsi inoltre che vengano applicate le seguenti autorizzazioni per i file: Servizio di rete: Controllo completo; Sistema: Controllo completo; Amministratori: controllo completo.

QueueDatabaseMaxBackgroundCleanupTasks

Questo parametro consente di specificare il numero massimo di elementi di lavoro per la pulizia in background che è possibile accodare in qualsiasi momento al pool di thread del modulo di database. Il valore predefinito è 32.

QueueDatabaseOnlineDefragEnabled

Il parametro consente di abilitare o disabilitare la deframmentazione in linea pianificata del database delle code di posta. Il valore predefinito è $true.

QueueDatabaseOnlineDefragSchedule

Questo parametro consente di specificare l'ora in formato 24 ore per avviare la deframmentazione in linea del database delle code di posta. Per specificare un valore, immettere un intervallo di tempo: hh:mm:ss dove h = ore, m = minuti, e s = secondi. Il valore predefinito è 1:00:00 o 01.00.

QueueDatabaseOnlineDefragTimeToRun

Questo parametro consente di specificare l'ora in cui può essere eseguita l'attività di deframmentazione in linea. Anche se l'attività di deframmentazione non termina entro l'ora specificata, il database delle code viene lasciato in uno stato coerente. Per specificare un valore, immettere un intervallo di tempo: hh:mm:ss dove h = ore, m = minuti, e s = secondi. Il valore predefinito è 3:00:00.

QueueDatabasePath

Questo parametro consente di specificare la directory predefinita per i file di database delle code. Il percorso predefinito è C:\Programmi\Microsoft\Exchange Server\TransportRoles\data\Queue. Prima di modificare la directory del database delle code, assicurarsi che la nuova directory esista. Assicurarsi inoltre che vengano applicate le seguenti autorizzazioni per i file: Servizio di rete: Controllo completo; Sistema: Controllo completo; Amministratori: controllo completo.

Ulteriori informazioni

Per ulteriori informazioni sulle code vedere Gestione delle code.

Per ulteriori informazioni su come modificare il percorso del database delle code, vedere Come modificare il percorso del database delle code.