Colly rûn-robin proxykarring mei SetProxyFunc
Brûk SetProxyFunc foar rûn-robin karring, mei it each op keep-alive, ferfanging fan transport en klonearre backend.
collector := colly.NewCollector()
switcher, err := proxy.RoundRobinProxySwitcher(
"http://proxy-a.example:8080",
"http://proxy-b.example:8080",
)
if err != nil {
return err
}
collector.SetProxyFunc(switcher)
err = collector.Visit("https://www.example.com/")Brûk github.com/gocolly/colly/v2 en syn proxy-pakket yn 'e funksje fan 'e applikaasje, en hâld normale flaterôfhanneling oan. Konfigurearje de selektor foardat oanfragen of asynkrone besiken begjinne. De HTTP-proksylist leveret iepenbiere kandidaten foar de endpoint-ynfier fan 'e skeakelder.
SetProxy kiest in fêst endpoint; SetProxyFunc lit de HTTP-transport per oanfraach kieze. Dat foarkomt it ferfangen fan dielde konfiguraasje binnen elke OnRequest-callback.
Yn dizze ymplemintaasje set SetProxyFunc ek DisableKeepAlives op true. It bywurket in besteand *http.Transport, mar ferfangt in oar transporttype troch in nije HTTP-transport. Bewarje bewust elts oanpast RoundTripper-gedrach ynstee fan oan te nimmen dat it oerlibbet.
Collector.Clone dielt de HTTP-backend, dus it feroarjen fan 'e proxy fan in kloan kin dy dielde backend feroarje. Bepaal eigendom foar parallel wurk. Rûn-robin karring rotearret de oanlevere endpoints, net ferifisearre iepenbiere útgongsidentiteiten of ûnôfhinklik kontrolearre beskikberens.