Modifica delle soglie di limitazione: quando e perché
Quando si tratta di limitazione delle richieste, non esiste una soluzione unica valida per ogni situazione. Esiste invece una serie di fattori che ne determineranno le impostazioni ottimali. In BizTalk Server sono forniti valori predefiniti che attraverso test hanno dimostrato di proteggere efficacemente un sistema da situazioni del tipo eccedenze di backlog, ma che potrebbero risultare eccessivi per alcuni scenari. Questo punto è illustrato negli esempi riportati di seguito.
Esempio 1: Caricamenti di picco e dimensioni del database
Ogni soluzione basata su BizTalk Server ha una velocità effettiva massima sostenibile (MST, Maximum Sustainable Throughput). Per definizione, finché il carico resta al di sotto di questo livello, il sistema è in grado di sostenerlo all'infinito. Nella pratica, tuttavia, è molto più frequente avere un andamento a picchi del profilo di carico che un carico costante invariabile nel tempo.
Anziché creare un sistema in grado di sostenere all'infinito i carichi di picco massimi, è molto più conveniente creare un sistema che sia in grado di gestire un certo backlog in condizioni di carico di picco per poi ripristinarsi durante i momenti di carico minore. Tuttavia, se il backlog previsto durante i carichi di picco è maggiore del valore di limitazione delle richieste predefinito per le dimensioni del database, il sistema bloccherà il backlog limitando l'input. Se non si desidera una condizione del genere, ad esempio perché è necessario utilizzare tutti i file di input quanto più rapidamente possibile, la soluzione è di aumentare la soglia delle dimensioni del database in modo da accettare il backlog previsto prima che venga applicata la limitazione delle richieste.
Esempio 2: Ottimizzazione utilizzo memoria
Un'altra risorsa utilizzata dalla limitazione delle richieste per misurare la velocità di elaborazione è la quantità di memoria disponibile per i processi host. Se la memoria disponibile diventa troppo ridotta rispetto alla soglia, la limitazione delle richieste rallenterà il numero di messaggi che il motore recupera dalle code host da elaborare. Data la variabilità nella quantità e nella disponibilità di memoria nei server di classe Enterprise odierni, in particolare con il supporto x64 in BizTalk Server, la soglia potrebbe essere molto utile per ottimizzare l'utilizzo della memoria.
Recommendation
La limitazione in BizTalk Server è configurata per impostazione predefinita per garantire una protezione ottimale per il sistema. Tuttavia, non è consigliabile dare per scontato che le impostazioni predefinite siano quelle ottimali. bensì monitorare i contatori delle prestazioni relativi allo stato della limitazione delle richieste per controllare se si stia verificando una limitazione, quindi misurare se la risorsa su cui si basa la limitazione (ad esempio le dimensioni del database o l'utilizzo di memoria) sia sottoutilizzata o sovrautilizzata e regolare le soglie della limitazione delle richieste innalzandole o abbassandole di conseguenza.