Когда вы создаёте прокси в кабинете, нужно выбрать режим: ротация или sticky-сессия. Кажется, что это мелочь, но от этого выбора зависит, будет ли работать задача. Многие обращения в поддержку с жалобой «прокси не работают» на деле сводятся к неподходящему режиму, а сами прокси в порядке.
Ротация: новый IP на каждое соединение
При ротации каждое новое соединение выходит в интернет через другой адрес из пула выбранной страны. Сто соединений сайт увидит как сто разных посетителей.
Для парсинга это то, что нужно. Ограничения на частоту запросов (rate limit) почти всегда считаются по IP. Если нагрузка распределена по сотням адресов, до лимита дело не доходит.
Обратите внимание: IP меняется на каждое соединение, а не на каждый запрос. Если HTTP-клиент держит keep-alive и отправляет десять запросов в одном TCP-соединении, все десять уйдут с одного адреса. Когда при проверке ротации скриптом вы видите повторяющиеся IP, причина обычно в этом. Проще всего проверять через curl: каждый его вызов открывает новое соединение.
# каждый вызов curl открывает новое соединение, значит IP будет новый
for i in 1 2 3; do
curl -s -x http://LOGIN:PASSWORD@proxy-dealer.com:5555 https://api.ipify.org
echo
doneЕсли создать в кабинете сразу несколько прокси с ротацией, их логины будут отличаться меткой line. Она нужна только для того, чтобы конфиги можно было различать, на смену IP она не влияет.
Sticky-сессия: один IP на заданное время
Sticky-сессия (от английского sticky, «липкий») закрепляет за вами один адрес. Все соединения идут через него, пока сессия не закончится. Для любой работы с входом в аккаунт нужен именно этот режим.
Вот как ротация внутри аккаунта выглядит со стороны площадки. Пользователь ввёл пароль из Нью-Йорка, через секунду открыл настройки из Чикаго, ещё через секунду нажал «Сохранить» из Далласа. Антифрод такое не пропустит. В sticky-сессии вся работа в аккаунте идёт с одного IP, как у обычного человека.
Сессия задаётся меткой в логине. Кабинет добавляет её сам, но полезно понимать, из чего состоит логин:
LOGIN-country-US-city-chicago-sid-k3v9x2ab-ttl-30m
│ │ │ └ время жизни: 30 минут
│ │ └ идентификатор сессии
│ └ город
└ странаПока идентификатор сессии (sid) не меняется, вы получаете тот же IP. Новый sid означает новый адрес. Поэтому на одном балансе можно держать несколько независимых профилей: создайте в кабинете несколько sticky-прокси, у каждого будет свой sid.
Какое время жизни ставить
За резидентским или мобильным IP стоит чьё-то реальное устройство. Если владелец выключит роутер или телефон потеряет сеть, сессия оборвётся раньше срока, и вы получите новый адрес. Повлиять на это нельзя, так устроены такие сети. Поэтому ставьте то время жизни, которого хватит на задачу, без большого запаса. В кабинете можно задать до двух часов.
| Задача | Режим | Время жизни |
|---|---|---|
| Парсинг каталога или выдачи | Ротация | не задаётся |
| Оформление заказа, многошаговая форма | Sticky | 10–15 минут |
| Работа в рекламном кабинете | Sticky | 30–60 минут |
| Профиль в антидетект-браузере | Sticky, отдельный на каждый профиль | 30–60 минут |
Бывает и обратная ситуация: сессия жива, но устройство попалось медленное. По нашим замерам скорость у мобильных устройств в одной и той же стране может отличаться в несколько раз. Если sticky-прокси заметно тормозит, не ждите конца сессии и пересоздайте прокси в кабинете. Новый sid даст другое устройство.
Ошибки, которые встречаются чаще всего
Ротация в антидетект-браузере
Браузер открывает десятки соединений параллельно: картинки, скрипты, шрифты. При ротации каждое уходит с нового IP, и сайт видит, что одну страницу загрузили из пятнадцати разных мест. Для браузерных профилей подходит только sticky.
Один sticky-прокси на несколько аккаунтов
Если три аккаунта работают через один sid, для площадки они сидят на одном IP, и это прямая связь между ними. Каждому аккаунту нужна своя сессия.
Sticky для массового парсинга
Весь поток запросов идёт через один адрес и быстро упирается в лимит. Скрипт получает ошибку 429 или капчу, и кажется, что прокси плохие. Для сбора данных включайте ротацию.
Резидентские — $3 за ГБ, мобильные — $4 за ГБ. Оплата за трафик, без подписки, гигабайты не сгорают.
СОЗДАТЬ АККАУНТ