Rendi il PAC più veloce senza cambiarne le risposte
Conserva le eccezioni sovrapposte e l'ordine dei fallback riducendo il lavoro di valutazione non necessario del PAC.
«Metti prima il caso comune» è un consiglio incompleto per un file PAC. Il primo return termina la decisione. Quando le regole si sovrappongono, il loro ordine fa parte della politica di routing.
Considera un proxy privato per un servizio e una rotta diretta per il resto del suo dominio:
function FindProxyForURL(url, host) {
host = host.toLowerCase();
if (host === 'restricted.example.net') {
return 'PROXY proxy.example.net:8080';
}
if (dnsDomainIs(host, '.example.net')) {
return 'DIRECT';
}
return 'PROXY proxy.example.net:8080';
}I nomi sono esempi. Spostare il controllo ampio del suffisso sopra l'eccezione dell'host esatto manda il servizio limitato direttamente. Lo script può essere più corto o più veloce mentre fa la cosa sbagliata.
Raggruppa le condizioni senza perdere la precedenza
Quando un grande elenco è davvero un insieme di nomi host esatti, di pari rango e con un solo esito, una struttura di ricerca adatta può essere più chiara dei controlli ripetuti di schemi. Quell'equivalenza va prima dimostrata. Un nome esatto, un wildcard e una regola di intervallo di indirizzi non appartengono automaticamente a un unico insieme intercambiabile.
Allo stesso modo, rimuovere www. è un cambio di politica se i due nomi usano di proposito rotte diverse. Ottimizzare un confronto di stringhe non dovrebbe ridefinire la destinazione in silenzio.
Rimuovi il lavoro costoso di cui la decisione non ha bisogno
Un controllo di uguaglianza del nome host non richiede DNS. Risolvi solo quando la politica rimanente ha bisogno di un indirizzo, ed evita di ripetere la stessa ricerca all'interno di una valutazione dove l'ambiente PAC supportato consente il riutilizzo.
Tieni un piccolo insieme di decisioni attese accanto al file: l'eccezione specifica, un fratello sotto il suffisso ampio, un nome host non correlato e i letterali di indirizzo rilevanti. Confronta la rotta restituita e l'ordine delle eventuali voci di fallback, non solo se il JavaScript viene analizzato. Quando quei risultati coincidono, verifica che il browser abbia caricato il PAC revisionato.
Un miglioramento delle prestazioni è convincente quando gli stessi casi mantengono le rotte previste e il lavoro inutile scompare. Le scorciatoie DIRECT ampie possono far sparire un ritardo cambiando l'IP di uscita.