Ultimo aggiornamento: 19.11.2007

Citrix Presentation Server

Ottimizzazione delle prestazioni





Introduzione


La difficoltà maggiore per gli specialisti è dimensionare correttamente il o i server terminal nella fase di offerta e primo contatto con il cliente. Il motivo è semplice: ogni cliente ha, oltre alle solite applicazioni office, diverse applicazioni più o meno complesse oppure delle soluzioni specifiche di nicchia. Non tutti gli utenti lavorano allo stesso modo e con le stesse applicazioni. L’utilizzo di internet e di siti con alto contenuto grafico che necessitano del player flash o di audio/video hanno un impatto non indifferente sulle prestazioni del server terminal.

Questo articolo vuole dimostrare la grande differenza in termini di prestazioni tra un’installazione predefinita e un’installazione ottimizzata tramite la modifica di valori nel registro di configurazione. Non è una soluzione definitiva e valida per tutti. Al contrario, è un suggerimento per aiutare ad implementare un sistema di test per le applicazioni che saranno utilizzate sul server terminal.

ATTENZIONE: questa dimostrazione non è una soluzione ai problemi di prestazioni, ma serve solo a scopo didattico. Non mi assumo nessuna responsabilità per le modifiche al sistema, in special modo al registro di configurazione. Prima di effettuare qualsiasi modifica al tuo sistema. esegui una copia di sicurezza (backup). Esegui le modifiche prima sul sistema di test e non sui sistemi in produzione. In ogni caso, ti assumi la piena responsabilità per le tue azioni.


Sistema di test


Il sistema usato per effettuare i test è un server Supermicro SuperServer 8042-8 con la configurazione seguente:

  • 4 processori Intel Xeon 2 GHz con HyperThreading attivato

  • 8 GB DDR-RAM ECC

  • Controller SCSI RAID Adaptec 2010S U320 con 48 MB RAM

  • 4 dischi Seagate ST373454LC, U320, 15’000 rpm, 8 MB cache, in configurazione RAID 0+1

  • Scheda di rete 3Com 3C996B-T Gigabit, PCI 64 bit






La configurazione software:

  • Microsoft Windows Server 2003 Enterprise Edition, Service Pack 2

  • Citrix Presentation Server 4.0 Advanced Edition

  • Internet Explorer 7.0

  • Microsoft Office 2003, Service Pack 3

  • Sistema aggiornato con Windows Update e hotfixes per Presentation Server



Per eseguire il test ho configurato 200 utenti locali:




Per ogni utente è disponibile una connessione ICA personalizzata. La connessione avvia un’applicazione Office a scelta (Winword, Excel, Access). L’immissione dati per un utente semplice è simulato da uno script *.vbs. Per simulare l’attività di un utente avanzato ho avviato Internet Explorer con la pagina di Tomb Raider. Questa presenta una grafica impegnativa in Flash.







Impostazioni: installazione predefinita


Il primo test è stato eseguito senza effettuare nessuna ottimizzazione particolare. Le immagini seguenti mostrano le impostazioni utilizzate:










Impostazioni: ottimizzazione delle prestazioni


Questo capitolo descrive tutte le impostazioni modificate nel registro di configurazione per ottimizzare le prestazioni ed i tempi di risposta delle sessioni. Se la chiave era già esistente nel registro, sono indicati i valori predefiniti.

Eliminate IE Flickering

Percorso chiave:
HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main
Valore DWORD: ForceOffscreenComposition = 1

Disable Office 2003 Customer Experience Improvement Program

Percorso chiave:
HKEY_CURRENT_USER\Software\Microsoft\Office\Common
Valore DWORD: QMEnable = 1

Disable File Locking

Percorso chiave:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\LanmanWorkstation\Parameters
Valore DWORD: UseLockReadUnlock = 1

Disable NTFS Last-Accessed Time Stamping

Percorso chiave:
HKEY_LOCAL_ MACHINE\System\CurrentControlSet\Control\FileSystem
Valore DWORD: NtfsDisableLastAccessUpdate = 1

Turn off Lazy Writes

Percorso chiave:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\LanmanServer\Parameters
Valore DWORD: IRPStackSize = 15
Percorso chiave:
HKEY_LOCAL_MACHINE\ System\CurrentControlSet\Services\LanmanWorkstation\Parameters
Valore DWORD: UtilizeNTCaching = 0

Improve Windows Kernel Performance

Percorso chiave:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager\Memory Management
Valore DWORD: DisablePagingExecutive = 1
Valore predefinito = 0

Increase the Network Request Buffer

Percorso chiave:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\LanmanServer\Parameters
Valore DWORD: SizReqBuf = 65535 (il valore minimo è 1024)

Eliminate Session Hangs During Logoff

Percorso chiave:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\LanmanServer\Parameters
Valore DWORD: MaxWorkItems = 8196
Valore DWORD: MaxMpxCt = 2048
Valore DWORD: MaxRawWorkItems = 512
Valore DWORD: MaxFreeConnections = 100
Valore DWORD: MinFreeConnections = 32
Percorso chiave:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\LanmanWorkstation\Parameters
Valore DWORD: MaxCmds = 2048
Percorso chiave:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\SessionManager\ConfigurationManager
Valore DWORD: RegistryLazyFlushInterval = 60

Speed up Application Load Times

Percorso chiave:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager\Memory Management\PrefetchParameters
Valore DWORD: EnablePrefetcher = 3
Valore predefinito = 2


Test 1: installazione predefinita


Le impostazioni predefinite del sistema permettono l’accesso a 42 utenti semplici. L’immagine seguente mostra l’utilizzo delle risorse.




Per quanto riguarda gli utenti avanzati, le impostazioni predefinite permettono l’accesso a 40 utenti. L’utilizzo delle risorse è più elevato, ma il tempo di risposta delle sessioni ICA è buono e l’utente non nota nessun calo di prestazioni.


Test 2: ottimizzazione delle prestazioni


Dopo le modifiche al registro di configurazione, il server supporta 100 utenti semplici senza alcun problema. Le prestazioni sono buone.







L’ottimizzazione permette l’accesso a ca. 80 utenti avanzati. Le prestazioni calano velocemente e i tempi di risposta sono molto bassi. I processori sono occupati al 100 %.







45 utenti avanzati occupano ancora i processori del server, ma i tempi di risposta sono migliorati. Clicca sull’immagine per ingrandirla.




La scheda di rete non presenta alcun problema in nessun caso.




Conclusioni


Il modo migliore per determinare la configurazione hardware da acquistare per un certo tipo di ambiente server based è testare le applicazioni su un sistema che riproduce fedelmente la configurazione software del sistema produttivo. Inoltre, lo scambio di esperienze tra specialisti e l’esperienza personale in altri ambiti informatici aiuta molto per evitare disastri ed errori in fase di progettazione. I server moderni, con processori multi core, possono gestire molti utenti. Non bisogna però dimenticare, che anche le applicazioni diventano sempre più complesse e pesanti. Ogni applicazione, ogni sistema, ogni utente, lavora e reagisce in modo differente.

Impostazioni che ottimizzano un sistema possono influenzare negativamente una determinata applicazione o rallentare un determinato sistema.

Vale quindi la regola d’oro: testare, testare, testare. Con le utilità messe a disposizione da Windows o programmi specifici supplementari è possibile verificare le prestazioni del sistema in modo dettagliato e determinare la soluzione migliore per ogni ambiente server based.


Links


Scalabilità del server terminal basato su Windows Server 2003



Free counter and web stats