Zrýchlite PAC bez zmeny jeho odpovedí
Zachovajte prekrývajúce sa výnimky a poradie záložných trás a znížte zbytočnú prácu pri vyhodnocovaní PAC.
„Dajte bežný prípad na prvé miesto“ je pre súbor PAC neúplná rada. Prvý return rozhodnutie ukončí. Keď sa pravidlá prekrývajú, ich poradie je súčasťou politiky smerovania.
Uvažujme o privátnom proxy pre jednu službu a priamej trase pre zvyšok jej domény:
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';
}Názvy sú príklady. Presunutie širokej kontroly prípony nad výnimku presného hostiteľa pošle obmedzenú službu priamo. Skript môže byť kratší alebo rýchlejší, a pritom robiť nesprávnu vec.
Zoskupte podmienky bez straty priority
Keď je veľký zoznam skutočne množinou presných názvov hostiteľov rovnakej úrovne s jediným výsledkom, vhodná vyhľadávacia štruktúra môže byť jasnejšia než opakované kontroly vzorov. Túto ekvivalenciu treba najprv dokázať. Presný názov, wildcard a pravidlo rozsahu adries automaticky nepatria do jednej zameniteľnej množiny.
Rovnako odstránenie www. je zmenou politiky, ak oba názvy zámerne používajú rôzne trasy. Optimalizácia porovnávania reťazcov by nemala potichu predefinovať cieľ.
Odstráňte drahú prácu, ktorú rozhodnutie nepotrebuje
Kontrola rovnosti názvu hostiteľa nevyžaduje DNS. Preložte len vtedy, keď zostávajúca politika potrebuje adresu, a vyhnite sa opakovaniu toho istého vyhľadávania v rámci jedného vyhodnotenia, kde podporované prostredie PAC umožňuje opakované použitie.
Majte pri súbore malú množinu očakávaných rozhodnutí: konkrétnu výnimku, súrodenca pod širokou príponou, nesúvisiaci názov hostiteľa a príslušné adresné literály. Porovnávajte vrátenú trasu a poradie záložných položiek, nie len to, či sa JavaScript parsuje. Keď sa tieto výsledky zhodujú, overte, že prehliadač načítal revidovaný PAC.
Zlepšenie výkonu je presvedčivé, keď rovnaké prípady zachovajú zamýšľané trasy a zbytočná práca zmizne. Široké skratky DIRECT môžu odstrániť oneskorenie a pritom zmeniť výstupnú IP.