数据中心代理
数据中心代理通过使用托管或云网络 IP 地址的服务器,发送应用程序的请求。网站收到来自代理 IP 的连接。您的浏览器、采集程序或其他应用程序,仍在您自己的电脑或服务器上运行。
数据中心代理是主要的代理网络类型之一,描述的是 IP 的来源。如果所访问的网站接受托管网络 IP,那么在需要许多地址或传输大量数据时,这类代理通常成本较低。
数据中心 IP 的来源
数据中心容纳服务器和网络设备,并提供电力、散热及互联网连接。代理服务商可以自行拥有这些设备,也可以向托管公司租用。服务商在服务器上运行代理软件,使用托管或云网络的公网 IP 地址连接网站。
一台服务器可以提供多个代理 IP。各个地址不同,但它们可能共用处理器和互联网连接。这样可以将硬件成本分摊到多个 IP 上,也意味着购买更多地址不一定会获得更多带宽,或允许建立更多并发连接。
代理类型取决于 IP 所属的网络,而不只是服务器所在的建筑。ISP 代理可以运行在同一数据中心的服务器上,但使用与互联网接入服务商关联的 IP。住宅和移动代理则分别使用家庭互联网连接和蜂窝移动连接。数据中心 IP 代表的是托管网络。
连接如何工作
当应用程序通过代理加载网页时,会发生三件事:
- 应用程序使用服务商提供的地址、端口及访问凭据连接代理。
- 代理连接网站并转发请求。网站看到的是这条连接使用的 IP,通常称为出口 IP。
- 网站将响应发送给代理,再由代理转回应用程序。
请求哪些页面、如何处理页面,仍由应用程序决定。代理负责传送请求和响应,不会替您执行数据采集,也不会替您生成测试负载。
服务商可以提供代理地址列表,也可以提供从地址池中选择 IP 的网关。使用网关时,您在设置中填写的地址,可能与网站看到的 IP 不同。
数据中心代理的优点
支持大量请求
托管服务器及其网络链路能够处理许多连接和大量数据传输。流量不必经过参与者的家庭连接,也不必经过移动设备的无线链路。因此,数据中心代理适合获取大量网页或下载大型数据集的任务。
带宽和响应时间是两回事。服务器可以传输大量数据,但由于路程较长或网站响应较慢,每个请求仍可能耗时较久。除了代理服务的带宽和连接数限制,还应关注完成任务所需的时间。
大规模 IP 列表的成本较低
多个代理 IP 可以使用同一台服务器,服务商不必为每个地址单独提供家庭连接或 SIM 卡。因此,大规模数据中心代理列表往往比住宅或移动代理便宜。不过,获取和维护 IP 地址仍需要成本;共享硬件只降低了服务商的一部分成本。
这适合定期采集或大规模下载,因为反复执行任务的费用会不断累积。应比较成功完成任务的成本:如果无法通过某个地址加载所需页面,即使地址便宜,价值也不大。
适合定时任务
代理服务器通常持续运行。定时任务不依赖某个家庭参与者一直让设备保持连接。使用静态服务时,应用程序还可以在后续运行中继续使用相同的 IP。
这有助于每日采集、监测和重复检查。可用性仍取决于服务商的设备和网络:维护、故障或过载都可能中断连接。
数据中心代理的限制
网站可以识别托管网络 IP
网站可以利用 IP 分类数据库和网络登记信息,识别与托管服务商关联的地址。它们不必先查出您自己的 IP。网站可能接受连接、显示验证码,也可能拒绝请求。
限制可能针对一个 IP、一个地址段,或通过自治系统编号(ASN)识别的整个网络。若属于最后一种情况,换成同一网络中的另一个 IP,结果可能仍然相同。地址多,并不一定代表来自许多不同的网络。
此前使用和共享使用可能影响 IP
某个地址可能因之前的活动而信誉不佳。将它分配给新客户,并不会抹去历史;在共享服务中,其他客户还可能继续使用同一 IP。这与网站拒绝所有托管网络 IP 是不同的问题:即便没有已知的滥用记录,地址也可能受到这类规则限制。
网站还可能评估 Cookie、账号、浏览器特征和请求模式。更换代理 IP 不会改变其中许多信号。因此,弄清拒绝访问的原因,比一味提高 IP 轮换频率更重要。
地址池大,不代表每个位置都有出口
可用国家和城市取决于服务商的网络及 IP 地址段。如果任务需要其他位置,那么集中在少数国家的数千个地址也帮不上忙。所需国家中的托管网络 IP,也不代表当地家庭或移动用户的连接。
检查位置时,关键在于网站如何识别该 IP。它使用的地理位置数据库可能给出不同结果,与服务商标注的国家或服务器的物理位置不一致。
数据中心代理的用途
以下示例使用代理 IP 的原因不同:分开采集任务、保留稳定地址,或从多个来源进行测试。数据中心基础设施使这些地址适合反复使用和大量传输。
抓取公开目录和档案
爬虫可以从多个来源采集公司记录、存档页面或文档。不同的代理 IP 可以分配给不同的工作进程。如果来源网站按 IP 统计请求数或连接数,这就很有用;否则,使用同一地址的进程会共用同一额度。
数据中心代理能以相对较低的成本提供大规模地址列表,并支持持续传输。爬虫仍需负责管理队列、解析内容,以及设置对每个网站的请求速率。增加 IP 不会提高被抓取网站的处理能力。
反复检查价格和库存
价格监测程序会在一天中多次访问已知的商品列表。可以为商店或商品组分配不同的代理地址,静态地址也可以在多次检查中重复使用。这样,采集过程就有了一致的网络来源,不必依赖运行监测程序的电脑当前所用的互联网连接。
由于同样的页面会被反复获取,较低的运行成本很重要。如果需要频繁更新大规模商品目录,数据中心代理值得测试。如果只是小规模监测,且直连就能正常工作,增加代理可能不会带来实际作用。
通过允许的 IP 获取 API 数据
有些数据 API 只接受来自获准来源地址的请求。工作进程可以通过静态数据中心代理连接,并将该代理 IP 加入允许列表。即便进程迁移到另一台服务器或另一个网络,API 收到的连接仍来自相同的代理 IP。
这适合定期导出 JSON 或 XML,以及传输大规模数据。代理提供网络地址并承载传输,应用程序仍需提供 API 密钥并处理响应。增加代理 IP,不会改变绑定在该密钥或账号上的配额。
从外部地址审查大型网站
SEO 爬虫可以检查您自己或客户的网站,查找失效链接、重定向链、重复标题和不正确的 canonical 标签。将抓取结果与站点地图比较,还可能发现没有内部链接指向的页面。静态代理为检查提供一个已知的外部地址,网站所有者可以在访问控制中放行它。在另一台机器上执行检查时,也可以继续使用同一地址。
数据中心的处理能力适合大规模抓取,但请求速率仍必须与网站能承受的负载匹配。爬虫负责找出错误,代理负责提供连接。网站迁移后,也可以从同一获准地址重复检查。
测试自有网站在负载下的表现
经事先约定的负载测试,可以通过多个代理 IP 发送请求,检查同时访问、持续 API 流量或请求量突然上升时的表现。不同来源地址,也能用于测试自有服务如何实施按 IP 设置的连接数和请求数限制。
数据中心代理可以用较低的成本提供多个外部地址。测试程序负责生成负载。还要测量代理服务的带宽和连接数限制,以免将代理饱和误认为网站缓慢。多个 IP 仍可能共用一台服务器和同一条网络链路。
访问选项
有两个独立的选择需要考虑:IP 是否保持不变,以及其他客户是否也在使用它。静态 IP 可以是共享的;一组独享地址也可以配合轮换使用。
IP 是否变化?
静态
服务商保持 IP 的分配关系,让您能在多次连接中重复使用。服务可以提供固定代理列表,也可以通过网关访问这些固定地址。您可以让某个 IP 对应一项特定任务,或在一连串操作中保留它。
如果应用程序循环使用静态列表,那么何时切换代理由应用程序决定。列表中的每个地址本身仍然固定。
轮换
服务商从地址池中选择 IP,并按规则更换,例如新建连接时或经过一定时间间隔后。有些服务提供粘性会话,可以为一系列请求保留同一 IP。
轮换改变的是地址,而不是网络类型:数据中心地址池提供的仍是数据中心 IP。具体更换时机由服务的轮换设置决定。
谁在使用这个 IP?
独享
服务商为一个客户预留该 IP。在预留期间,服务商的其他客户不会使用它。这让您可以控制经由该地址发送的活动。
服务器本身仍可以承载其他代理 IP。地址独享不一定意味着硬件或带宽也独享。
共享
多个客户使用相同的代理 IP。他们的连接相互独立,但网站实施基于 IP 的限制时,可能合并统计他们的请求。其他客户的活动也可能影响该地址的信誉。
共享让多个客户分摊 IP 的成本。
