Dai a ogni worker HtmlUnit un proxy stabile
Imposta le opzioni proxy di HtmlUnit prima del caricamento delle pagine e impedisci ai worker paralleli di cambiare la rotta di un unico client browser condiviso.
job A → WebClient A → proxy A → destination
job B → WebClient B → proxy B → destinationAssegna un HtmlUnit WebClient configurato a ogni identità di navigazione simultanea. Le sue WebClientOptions possiedono la ProxyConfig; considera la rotta fissa mentre il lavoro è in esecuzione. Una coda di lavori condivisa non richiede un browser mutabile condiviso. Per i controlli consentiti di pagine pubbliche con HTTP ProxyConfig, scegli endpoint candidati dalla lista di proxy HTTP prima di assegnarli ai worker.
Mantieni la pagina, i caricamenti successivi e lo stato di sessione presso quel client. Cambiare le opzioni proxy non può trapiantare connessioni già stabilite. Client separati creano anche stato del browser separato, quindi pianifica qualsiasi accesso condiviso previsto invece di presumere che solo l'instradamento determini l'identità. L'autenticazione proxy usa l'interfaccia della versione di HtmlUnit installata e resta separata dall'accesso al sito web.
Definisci il completamento prima di restituire un browser a un pool. La risposta di livello superiore può arrivare mentre script o richieste in background continuano. Termina o annulla quel lavoro, cancella lo stato che l'identità successiva non deve ereditare e ritira il client se quel confine non può essere stabilito in modo affidabile.
Limita il numero di client attivi e chiudi i WebClient completati. Un browser analizza e può eseguire script, cosa che costa più di un semplice trasferimento. Per un lavoro che necessita solo dell'HTML restituito, un client HTTP più piccolo può supportare più richieste simultanee nello stesso budget di risorse.