住宅代理会话粘性测试:购买前先量化稳定性

住宅代理可能速度快、地理位置准确,却仍不适合需要连续性的工作流。经常缺失的指标是会话粘性:在一系列获授权请求中,服务商能否稳定保持同一路线、出口 IP 或位置身份。

“粘性”并不是统一技术保证。有的服务在固定时段保持完全相同的出口 IP;有的只在流量持续活跃时保持;还有的会在连接错误后更换 IP,但仍保留目标国家。下面的测试把这些差异转化为购买更大套餐前可重复执行的证据。

住宅代理会话沿稳定互联网路线持续传输的编辑插图

先定义业务需求

不要先问 IP 是否一直不变,而要先写清应用真正需要什么。登录浏览器流程可能要求十分钟内保持同一出口;区域价格检查可能只要求国家不变;长时间采集任务则可能允许轮换,只要新出口仍在指定地区且应用状态可继续使用。

验收合同至少应包含:

  • 所需会话时长与正常请求间隔;
  • 最长预期空闲时间;
  • 必须稳定的是 IP、ASN、国家、地区还是城市;
  • 可接受的最大重连次数;
  • 哪些错误允许触发新路线;
  • 延迟上限与最低成功率;
  • 每个有效会话的最高成本。

这样可以避免一条技术上稳定、却无法完成实际业务的路线错误通过测试。

分开衡量五种稳定性

1. 连接稳定性

单个连接能否在没有异常中断的情况下持续使用,适用于流式传输、长轮询、大文件和浏览器会话。

2. 出口 IP 稳定性

相同会话标识在多次连接中是否返回同一公网出口 IP。

3. 地理稳定性

如果 IP 发生变化,新出口是否仍位于要求的国家、地区或城市。

4. 网络身份稳定性

ASN 或网络类型是否一致。同一城市的两个 IP,如果来自不同接入网络,实际表现也可能明显不同。

5. 应用连续性

底层路线重连后,Cookie、获授权登录状态、购物车以及工作流数据是否仍可继续使用。

不要把五种信号压缩成“粘性/不粘性”一个标签,否则无法知道该修复配置、调整会话规则还是更换产品。

建立受控测试矩阵

只使用自有或明确获授权的目标。保持目标、客户端版本、代理端点、凭据范围、目标位置、会话令牌、请求头和调度不变,至少运行以下四种模式。

活跃会话测试

以短于预期空闲超时的固定间隔请求。可先从每 30 秒一次、持续 15 分钟开始。每次记录出口 IP、地址族、ASN、国家、建连时间、状态和重连事件。

空闲超时测试

创建会话并确认初始路线,然后分别空闲 1、5、10、30 分钟,再复用同一会话标识。结果应明确显示完全相同 IP 的保持边界,以及轮换后地理位置是否仍稳定。

受控故障测试

只在自有环境制造安全的客户端故障,例如刻意缩短本地超时,或使用会主动关闭连接的测试端点。不要对无关公共网站制造失败。目标是确认传输故障后服务商是否轮换会话,而不是给他人服务施压。

并发会话测试

在相同目标位置下开启多个独立会话标识,检查它们是否错误共享状态,以及一个会话失败是否会导致其他会话轮换。这对浏览器自动化、研究团队和多工作进程管道尤其重要。

记录每次尝试,而不只记录最终成功

HTTP 库、浏览器框架、队列工作进程、代理 SDK 与编排系统都可能自动重试,让不稳定路线看似健康。评估期间应尽量关闭自动重试;无法关闭时必须观测并记录:初始请求、连接尝试、重试、成功响应、轮换、超时、认证失败、策略拒绝和总耗时。

一次完成的逻辑请求可能隐藏多次失败连接。采购决策必须基于完整尝试历史。

使用紧凑的观测记录

每次尝试保存以下字段:

session_hash
timestamp
request_number
exit_ip
address_family
asn
country
region
connection_ms
response_status
error_class
retry_number
reconnected
bytes_transferred

会话标识在写日志前必须哈希。测试报告不得保存代理密码、认证头、Cookie、个人数据或原始访问令牌。

计算支持采购决策的指标

完全相同 IP 保持率

使用初始出口 IP 的有效请求数除以会话内全部有效请求数。

地理保持率

即使 IP 轮换,也要衡量实际国家或地区匹配目标位置的比例。

意外轮换率

统计在约定时长、空闲或故障边界之前发生的路线变化。

每个初始请求对应的成功请求成本

这个指标揭示隐藏重试放大。若完成一次逻辑请求平均需要超过一次连接尝试,系统正在消耗额外流量和时间。

p50 与 p95 建连时间

平均值会隐藏长尾,p95 更适合判断浏览器或采集任务能否在截止时间内完成。

有效会话率

只有同时满足连续性、成功率、位置、延迟和时长要求的会话才算有效。

每个有效会话成本

用总流量与套餐成本除以通过验收的会话数。更低的每 GB 单价,如果失败会话很多,实际成本反而可能更高。

验收规则示例

> 在 15 分钟活跃会话中,每 30 秒发送一次获授权请求:至少 95% 的会话保持同一出口 IP,99% 保持在目标国家,p95 建连时间不超过应用上限,且任何逻辑请求都不得超过既定重试预算。

实际阈值取决于工作流,但必须在测试前确定,并对所有服务商或配置使用相同标准。

常见测试错误

  • 只测试一个出口:单次成功不能代表整个池,应覆盖多个会话、地区和时间窗口。
  • 混淆服务商与目标故障:目标返回 429、认证拒绝或应用错误,不等于代理路线失败。
  • 使用不同调度比较:目的地、地区、时长和请求间隔必须一致。
  • 忽略 IPv4 与 IPv6:必须记录地址族,避免 IPv4 回退让 IPv6 测试看似成功。
  • 把轮换一律视为坏事:部分工作流需要受控轮换,真正的问题是违反验收合同的意外轮换。

采购检查清单

  • 已记录所需会话行为;
  • 已测试活跃、空闲、故障和并发模式;
  • 已抽样足够多的独立会话;
  • 已分开评估 IP、地理、ASN 与应用连续性;
  • 已衡量隐藏重试和总尝试次数;
  • 已比较 p50、p95 与有效会话成本;
  • 已在不同服务商上使用同一调度;
  • 已验证隐私、授权和数据保留控制;
  • 已记录回滚及服务商升级路径。

合规与负责任测试

住宅代理只能用于合法、获授权的目的。遵守目标条款、适用的 robots 策略、速率限制、隐私义务和地区法律。不得利用会话保持或轮换绕过访问控制、掩盖滥用行为,或超期保留个人数据。

相关 98IP 指南

常见问题

粘性会话是否一定保持同一 IP?

不一定。服务商可能按连接寿命、时间窗口、会话令牌、地理位置或故障行为定义粘性,必须测试应用真正依赖的条件。

测试应该运行多久?

至少覆盖最长业务流程,并在不同时段重复。短测试无法验证长时会话要求。

IP 改变后是否应该重试?

只有错误属于瞬时问题且逻辑操作可安全重复时才重试。认证、策略或格式错误应先诊断,不能直接轮换。

静态住宅代理是否总是更好?

不是。静态住宅服务适合长连续性要求,轮换住宅服务可能更适合其他获授权任务。应比较有效会话率、位置准确度、延迟、容量与实际成本。

最重要的指标是什么?

有效会话率通常最适合作为总指标,因为它直接组合业务必须满足的条件;同时保留底层指标,才能解释失败原因。