Ottimizzare le prestazioni in Project Server 2013
Riepilogo: leggere le linee guida per ottimizzare le prestazioni per una distribuzione di Project Server 2013.
Si applica a: Project Server 2013
Ottimizzazioni
Questo documento e il contenuto correlato contengono informazioni e consigli per l'ottimizzazione di una farm di Project Server 2013 per ottimizzare le prestazioni.
Baselining
In genere è consigliabile limitare il numero di previsioni salvate in un determinato momento. È previsto un limite massimo di 11 previsioni supportate in un determinato momento.
Ottimizzazioni del server di database
Dal momento che Project Server 2013 è un'applicazione che richiede un uso intensivo dei dati, l'ottimizzazione del livello del database può migliorare considerevolmente le prestazioni. Vedere gli argomenti sulla pianificazione e la configurazione della capacità di archiviazione di SQL Server per le linee guida generali sull'ottimizzazione delle impostazioni di SQL Server. Alcuni dei seguenti suggerimenti fanno riferimento a quelli illustrati negli argomenti relativi a SQL Server:
Separare i file dei database e i file di log delle transazioni dalle unità del sistema operativo, preferibilmente con una specifica partizione per ognuno. Questo aiuta a ridurre le contese di I/O tra il sistema operativo host e SQL Server, quindi anche tra i file del database SQL e i file di log, che tendono ad avere diversi modelli di aggiornamento a seconda della strategia di ripristino utilizzata.
Separare TempDB posizionandolo in una specifica partizione. Suddividere il database in diversi file fisici (idealmente, suddividerlo in tanti file quanti sono i processori nel server di database).
Considerare l'utilizzo di un sottosistema RAID per le esigenze dei dati.
Nota: RAID 5 è accettabile per set di dati di medie e grandi dimensioni, ma RAID 10 è ideale.
Nota: spostare gli indici nella propria partizione.
Ottimizzazione dei progetti principali
Quando si utilizza la funzionalità Progetti principali in Project Server, tenere presente che le modifiche apportate alla programmazione dei progetti principali influiranno sulla programmazione dei sottoprogetti nei progetti principali. Le modifiche alla programmazione per progetti principali molto grandi possono quindi essere eseguite lentamente, perché potrebbe essere necessario aggiornare i piani dei sottoprogetti.
Ottimizzazioni delle impostazioni di sicurezza
Nota: le ottimizzazioni non sono necessarie se si usa la modalità di autorizzazione di SharePoint.
Nella modalità di autorizzazione di Project le impostazioni di sicurezza selezionate per gli utenti possono avere un effetto significativo sulle caratteristiche delle prestazioni. Questo accade perché determinano sia la quantità di dati che gli utenti caricano quando visualizzano i progetti che la complessità dei controlli di sicurezza eseguiti per determinare a quali set di dati possono accedere gli utenti.
Gli amministratori avranno ad esempio accesso a tutti i progetti archiviati in Project Server, quindi per loro sarà necessario caricare tutti i dati per potervi interagire. I membri del team potrebbero non avere bisogno di accedere a tutti i dati, pertanto è possibile limitare la quantità di dati inviati loro utilizzando le categorie di sicurezza:
- Utilizzare gruppi e categorie quando possibile invece di autorizzazioni più dettagliate che richiedono ulteriore complessità nei controlli di sicurezza.
- Tentare di limitare le autorizzazioni di sicurezza degli utenti ai progetti a cui hanno bisogno di accedere. In questo modo vengono caricati solo i dati di cui necessitano quando interagiscono con Project Server.
Ottimizzazioni delle visualizzazioni
Si dovrebbe tentare di limitare i dati presentati agli utenti restringendo il numero di colonne in una determinata visualizzazione solo alle colonne che gli utenti con autorizzazione per la visualizzazione hanno bisogno di vedere. Si tenga inoltre presente che l'aggiunta di colonne Campi personalizzati avrà un effetto negativo sulle prestazioni della visualizzazione.
È inoltre possibile utilizzare i filtri per limitare la quantità di dati che devono essere caricati quando viene caricata una particolare visualizzazione. Tenere comunque presente che i filtri con una logica complessa richiedono ulteriore elaborazione e potrebbero rallentare le prestazioni.
Ottimizzazioni dei campi personalizzati
L'impatto sulle prestazioni dell'utilizzo di campi personalizzati dipende da molti aspetti dei campi personalizzati utilizzati (sia per i campi personalizzati reparto che organizzazione). Di seguito sono riportate alcune considerazioni e suggerimenti relativi agli aspetti relativi alle prestazioni dei campi personalizzati.
L'impatto sulle prestazioni dei campi personalizzati dipenderà da quanto segue:
L'impatto sulle prestazioni dei campi personalizzati dipenderà da quanto segue:
- Quantità di dati archiviati nei campi personalizzati usati. In genere sono di tipo sparse o sono presenti grandi quantità di dati in una determinata colonna di campo personalizzata?
- Per i campi delle formule, più le formule utilizzate sono complesse, più negativo sarà l'impatto sulle prestazioni.
- Il livello in cui sono presenti i campi personalizzati:
Quantità di dati archiviati nei campi personalizzati usati. In genere sono di tipo sparse o sono presenti grandi quantità di dati in una determinata colonna di campo personalizzata?
Per i campi delle formule, più le formule utilizzate sono complesse, più negativo sarà l'impatto sulle prestazioni.
Livello a cui si trovano i campi personalizzati. Di solito in un set di dati vi sono molte più attività che progetti, pertanto i campi personalizzati applicati a livello di attività avranno un impatto notevolmente più negativo sulle prestazioni rispetto ai campi personalizzati a livello di progetto.
Generalmente è consigliabile tentare di limitare il numero di campi personalizzati utilizzati, soprattutto a livello di attività. Come regola generale, provare a usare meno di 10-15 campi personalizzati dell'organizzazione a livello di attività.
I campi personalizzati per le attività e le assegnazioni sono il principale collo di bottiglia nel salvataggio da Project Professional al server nella maggior parte dei set di dati dei clienti presi in esame.
Ottimizzazioni dei campi personalizzati locali
Seguendo le raccomandazioni sull'ottimizzazione dei campi personalizzati, ottimizzare l'utilizzo dei campi formula locali limitando il numero di campi formula locali utilizzati nel client Project.
L'impatto sulle prestazioni dei campi personalizzati dipende in particolare dalla limitazione dell'uso dei campi formula, laddove possibile, in quanto richiedono un trasferimento di dati aggiuntivo che aumenta il tempo necessario per risparmiare sul server.
Ottimizzazioni dei payload delle pagine
Uno dei fattori più importanti per determinare il tempo di caricamento di una determinata pagina è la quantità di dati a cui è necessario accedere in una determinata richiesta di pagina. Ciò è determinato in gran parte dal numero di web part, dai tipi di web part e dalla quantità di dati che presentano in una determinata pagina. Di seguito sono riportate alcune raccomandazioni generali per limitare i payload delle pagine di Project Server:
Limitare ai soli dati necessari la quantità di dati caricati da queste web part.
Le considerazioni sul payload sono particolarmente importanti per le pagine dei dettagli del progetto, dove di solito è presente un numero superiore di web part in una determinata pagina e si verifica una maggiore personalizzazione.
Ottimizzazioni delle code
Project Server 2013 utilizza un sistema di code per gestire le richieste, che consente di soddisfare complessivamente un numero superiore di richieste. Alcune impostazioni legate al modo in cui agisce la coda possono essere modificate attraverso la pagina Impostazioni della coda. Questa sezione fornisce una breve spiegazione delle impostazioni che è possibile modificare e di come ottimizzarle a seconda delle esigenze. Numero massimo di thread (1-20, valore predefinito 4): determina il numero di processi che la coda può elaborare in parallelo in un determinato momento. Si noti che l'impostazione viene applicata a tutti i computer nella farm: se si hanno tre server applicazioni e questo valore viene impostato su 4 per la coda del progetto, è possibile elaborare contemporaneamente fino a 12 processi di progetto indipendenti.
Numero massimo di thread (1-20, valore predefinito 4): determina il numero di processi che la coda può elaborare in parallelo in un determinato momento. Si noti che l'impostazione viene applicata a tutti i computer nella farm: se si hanno tre server applicazioni e questo valore viene impostato su 4 per la coda del progetto, è possibile elaborare contemporaneamente fino a 12 processi di progetto indipendenti.
Se si rileva che i processi in coda stanno sottraendo una quantità eccessiva di risorse da un carico di lavoro sincrono, è possibile provare a eseguire la seguente operazione:
Se è presente un numero elevato di processi elaborati in parallelo (ovvero, vengono visualizzati più processi contemporaneamente con stato "in elaborazione" quando si controlla lo stato della coda), è possibile provare a ridurre il numero di thread.
Ottimizzazioni del processo associato al carico di lavoro
Alcuni aspetti del funzionamento e della gestione della distribuzione di Project Server possono contribuire a migliorare le prestazioni percepite di Project Server. Questa sezione illustra un elenco di modifiche dei processi aziendali o IT in grado di migliorare le prestazioni percepite di Project Server nei periodi in cui è più probabile che gli utenti interagiscano con il sistema.
- Invio di schede attività e stato:
- Se possibile, tentare di scaglionare gli orari in cui gli utenti inviano gli aggiornamenti di stato e le schede attività. Ciò consentirà di ridurre il carico sul sistema nei periodi di picco, distribuendolo su intervalli di tempo più lunghi.
- Backup:
- Se possibile, è consigliabile provare a eseguire i processi di backup durante i periodi non di picco, poiché si tratta di processi a elevato utilizzo di risorse che ridurranno le prestazioni percepite per gli utenti che tentano di usare il sistema mentre sono in esecuzione.
- Reporting:
- Come per i processi di backup, è consigliabile provare a eseguire la compilazione di cubi OLAP per la creazione di report durante i periodi non di picco, in quanto si tratta di processi a elevato utilizzo di risorse che ridurranno le prestazioni percepite per gli utenti che tentano di usare il sistema mentre sono in esecuzione.
- Modalità di autorizzazione di SharePoint:
- Se la modalità di autorizzazione di SharePoint è abilitata, la sincronizzazione degli utenti di SharePoint non è necessaria, consentendo un miglioramento delle prestazioni.
Ottimizzazioni del flusso di lavoro
Quando si utilizza la funzionalità Flussi di lavoro, tenere presente che le seguenti azioni avranno un impatto negativo sulle prestazioni della distribuzione:
- Potrebbe essere necessario molto tempo per caricare la pagina "Modifica o riavvia flussi di lavoro" in Impostazioni del server quando è presente un numero elevato di progetti archiviati nel database.
- Riavviare o modificare il tipo di progetto organizzazione per un numero elevato di progetti dalla pagina Modifica o riavvia flussi di lavoro in Impostazioni del server.
- Utilizzare un processo di approvazione con un numero molto elevato di utenti.
- Inviare progetti contemporaneamente da un passaggio del flusso di lavoro senza archiviazione obbligatoria.
In generale, è consigliabile ridurre al minimo queste azioni o eseguirle in periodi di scarso traffico per ottimizzare le prestazioni percepite.
Ottimizzazioni delle soluzioni personalizzate (programmabilità)
Quando si sviluppano soluzioni personalizzate che interagiscono con le interfacce programmabili di Project Server, tenere presenti i seguenti suggerimenti per le prestazioni:
- Se si distribuiscono gestori eventi, tenere presente che i gestori eventi sono sincroni. È necessario prestare attenzione quando si utilizzano gestori eventi nelle soluzioni personalizzate, perché se vengono utilizzati in modo inefficace possono peggiorare in modo sostanziale le prestazioni di Project Server.
Nota
I gestori eventi possono essere eseguiti in un altro computer.
- La soluzione personalizzata dovrebbe tentare di limitare le chiamate alle operazioni in coda in Project Server per evitare di sovraccaricare la coda.
- Per le applicazioni line-of-business (LOB), quando si automatizza lo spostamento di dati tra Project Server e altre applicazioni, se si rileva che le sincronizzazioni con questo tipo di applicazioni peggiorano in modo sostanziale le prestazioni, è consigliabile eseguirle nei periodi non di picco.
- È consigliabile che i clienti testino e monitorino le prestazioni delle applicazioni LOB oltre alle prestazioni per l'utente.
- Quando possibile, utilizzare i campi intrinseci di Project Server invece di campi personalizzati per eseguire la sincronizzazione desiderata tra Project Server e le applicazioni LOB.
- Tentare di ridurre i dati spostati tra le applicazioni LOB e Project Server al sottoinsieme più piccolo necessario per ottenere la funzionalità desiderata.
Project Server 2013 SDK e gli articoli correlati contengono ulteriori suggerimenti per il mantenimento di prestazioni elevate quando si sviluppano soluzioni personalizzate.
Vedere anche
Panoramica della pianificazione di prestazioni e capacità in Project Server 2013
Strategia di pianificazione della capacità per Project Server 2013
Indicazioni su prestazioni e capacità dell'hardware per Project Server 2013
Topologie con scalabilità verticale e orizzontale in Project Server 2013
Ottimizzare le prestazioni in Project Server 2013
Contatori delle prestazioni in Project Server 2013
Risoluzione dei problemi relativi alle prestazioni in Project Server 2013