Originally published on proxymint.
A proxy rotation strategy decides when a job changes exit IP, how fast it hits each target and which failures it retries, with a failure table and Python code.
TL;DR
- A proxy rotation strategy makes four decisions. The rotation unit, the trigger that ends an exit's turn, the pace per target, and how each kind of failure is handled.
- Rotate at the boundary of state. Stateless pages take per-request rotation; a login, cart or search query keeps one sticky exit until it ends.
- Rotation does not raise a target's limit. Limits can key on the IP, the account or a cookie, so pace is one budget per target shared by every exit.
- Retry only what the proxy broke. Connect timeouts and gateway errors get a new exit; 429, 503 and challenge pages mean back off or stop.
Key takeaways
- Use a separate port for each parallel sticky session. Size the pool by sessions that run at once, and let the target's limits cap concurrency.
- Set the rotation interval above the longest flow. A timer is a schedule, so check the exit IP before the step that matters.
- Open a fresh connection when you need a new exit. A kept-alive HTTPS tunnel stays on one exit whatever the rotation setting says.
- Log retries per page, 429 share and session survival. Those three numbers show whether the strategy works before the job scales.
Read the full guide on proxymint, with the commands, tables and sources.