一句话规则#
每个请求相互独立时使用轮换;目标会关联多个请求(登录、购物车、分页搜索、多步骤表单)或检查一致性时,则使用粘性会话。
决策表#
| 任务 | 模式 | 用户名 |
|---|---|---|
| 按 URL 收集商品页面 | 轮换 | USER-cc-de |
| 搜索后打开三个结果页面 | 粘性,5 分钟 | USER-cc-de-sid-q17-ttl-5m |
| 加入购物车、结账并确认 | 粘性,30 分钟 | USER-cc-us-sid-order42-ttl-30m |
| 登录并以同一用户身份操作一天 | 粘性,24 小时 | USER-cc-gb-sid-acct9-ttl-24h |
| 连续数周保持同一地址 | 不使用会话:改用 ISP 代理 | 列表中的 ip:8000 |
| 从多个城市抽样搜索结果页 | 轮换,每个请求指定城市 | USER-cc-us-city-chicago |
网关如何决定出口#
- 没有
-sid-:每个新的 TCP 连接都会获得新出口。 -sid-X:所有携带 X 的连接共享一个出口,直到-ttl-到期(默认 10 分钟,最长 24 小时)。- 更改 X 会立即获得新出口;TTL 到期后再次使用 X,同样会获得新出口。
- 如果 X 对应的家庭住宅离线,会话会迁移到同一位置的另一个出口;请将失败的请求重试一次。
连接保持陷阱#
HTTP 客户端会复用连接。即使没有会话 ID,你仍可能在多个请求中看到相同 IP,因为这些请求共用了同一连接;这并非粘性,而是连接复用,连接池回收该连接时就会结束。若需要固定一个出口,请使用 -sid- 明确指定;若每次请求都需要新出口,请关闭连接或为每个请求使用新的会话 ID。
重试#
在轮换任务中,遇到 403 或 429 后重试会成为新的访问者:成本低且有效。在粘性任务中,跨出口重试会破坏流程,而且看起来正像网站要识别的自动化行为;请在同一会话中退避后重试,仅当出口本身失效时才启动新会话。
并行处理#
各个粘性会话彼此独立。用一百个 ID 运行一百个会话,就相当于拥有一百位行为一致的访问者;每个会话都在自身有效期内保持独立出口。ProxShift 不限制并发,因此制约因素是目标城市的代理池规模,而不是网关。
大家常问的问题#
粘性会话更贵吗?
不会。无论出口是否轮换,每 GB 流量的价格都相同;会话 ID 只改变路由,不改变价格。
可以让会话持续超过 24 小时吗?
住宅代理池不支持。若地址必须连续数周保持固定,请租用 ISP 代理:静态、独享且流量不限。