job A → WebClient A → proxy A → destination
job B → WebClient B → proxy B → destination

Her eşzamanlı tarama kimliğine yapılandırılmış bir HtmlUnit WebClient atayın. WebClientOptions onun ProxyConfig'ine sahiptir; iş çalışırken rotayı sabit kabul edin. Paylaşılan iş kuyruğu tek bir paylaşılan değişken tarayıcı gerektirmez. HTTP ProxyConfig ile izin verilen genel sayfa kontrolleri için, çalışanlara atamadan önce HTTP proxy listesinden aday uç noktaları seçin.

Sayfayı, sonraki yüklemeleri ve oturum durumunu o istemcide tutun. Proxy seçeneklerini değiştirmek kurulmuş bağlantıları taşıyamaz. Ayrı istemciler ayrı tarayıcı durumu da oluşturur, bu yüzden kimliği yalnızca yönlendirmenin belirlediğini varsaymak yerine amaçlanan herhangi bir paylaşılan oturum açmayı planlayın. Proxy kimlik doğrulaması, kurulu HtmlUnit sürümünün arabirimini kullanır ve web sitesi oturum açmasından ayrı kalır.

Bir tarayıcıyı havuza geri vermeden önce tamamlanmayı tanımlayın. Üst düzey yanıt, betikler veya arka plan istekleri sürerken gelebilir. Bu işi bitirin veya iptal edin, sonraki kimliğin miras almaması gereken durumu temizleyin ve bu sınır güvenilir biçimde kurulamıyorsa istemciyi devre dışı bırakın.

Etkin istemci sayısını sınırlayın ve tamamlanan WebClients'ları kapatın. Bir tarayıcı ayrıştırır ve betik çalıştırabilir; bu, düz bir aktarımdan daha maliyetlidir. Yalnızca döndürülen HTML'e ihtiyaç duyan bir iş için daha küçük bir HTTP istemcisi aynı kaynak bütçesi içinde daha fazla eşzamanlı isteği destekleyebilir.

İlgili makaleler