最佳实践
判断 Shifter 是否适合您的项目,最快的方法是运行您的真实工作负载,也就是您将在生产环境中运行的相同请求,并诚实地看待结果。以下做法能帮助您获得干净、有代表性的测试结果,而不是误导性的结果。
让轮换方式匹配任务
Section titled “让轮换方式匹配任务”您应该根据任务需求来决定如何轮换 IP。
- 按请求轮换(默认): 通过网关
p.shifter.io:443发送的每个请求都会使用全新的住宅 IP。最适合抓取、爬取、价格采集、SERP 工作,以及任何每个请求都独立存在的场景。 - 粘性会话: 使用会话 id(
sid)和存活时间(ttl)在设定的时间窗口内保持同一个 IP。最适合登录、购物车、结账,以及任何必须停留在同一个 IP 上的多步骤流程。例如,customer-USERNAME-sid-9f3a2b7c-ttl-600会将同一个 IP 保持约 600 秒。
经验法则:如果各步骤之间相互依赖,使用会话;如果不依赖,则进行轮换。完整细节见 会话。
定位正确的位置
Section titled “定位正确的位置”许多网站会根据位置更改内容、定价或可用性。
- 如果您的目标对地理位置敏感,请按国家、地区、城市或 ASN 进行定位,使您的测试反映出该市场真实用户所看到的内容。例如,
customer-USERNAME-country-us-state-newyork-city-newyork。 - 如果位置对您的用例无关紧要,请保持宽泛的定位。过度缩小范围会减少可用的 IP 池,并可能在没有任何好处的情况下降低成功率。
有关每个参数的详情,请参阅 地理定位。
控制请求节奏
Section titled “控制请求节奏”分散负载往往是测试成败的关键差异。
- 将请求分散在时间和多个 IP 上,而不是集中猛攻一个目标。使用按请求轮换时,IP 已经会变化,因此您主要可控的因素是并发量和时间安排。
- 从适度的并发量开始,观察成功率,然后再逐步提升。如果加大力度后成功率下降,说明您对该目标的请求速度过快,而不是碰到了代理的限制。
- 添加小幅且多样化的延迟,并在新 IP 上重试失败的请求。使用轮换机制时,重试自然会落在不同的出口上,因此可以把被封视为一个轻微信号:放慢速度、重试、继续。
选择与工作负载匹配的产品
Section titled “选择与工作负载匹配的产品”选错产品是试用效果不佳的最常见原因。
- 住宅代理: 轮换的住宅 IP,使流量看起来像许多真实用户产生的一样。适用于抓取、监控、广告验证、市场调研和 SERP 采集。
- ISP 代理: 在整个计费周期内保持相同的城市和 ISP(ASN)。适用于账户管理、较长的结账或登录会话,以及来自特定城市和 ISP 的广告检查。
如果您不确定,可以参考 选择产品。
解读您的结果
Section titled “解读您的结果”要依据真实的数据来判断,而不是几次测试调用。
- 在接近生产环境的量级下观察成功率和数据质量。少量失败属于正常情况,大规模下的比率才是关键。
- 通过代理向 IP 查询端点(例如 IP Info,
http://ip-info.com/json)发送请求,检查 IP 和国家,以确认出口符合您的要求。 - 如果结果看起来不对,在归咎于网络之前先检查三件事:轮换还是会话是否与任务匹配、目标位置是否设置正确、并发量是否过高。
您的测试在流量、目标和时间安排上越贴近生产环境,试用能告诉您的信息就越多。把它设置得像真实场景一样,答案自然会浮现。