重新思考,如何搭建一套简易高效的隧道代理

近期上线了基于http的隧道代理api业务,核心目标只有一个,就是用最简单的方式去灵活应对不同的代理使用场景。

有隧道代理需求可直接阅读使用文档,本文主要介绍为什么要推出这样一款基于api的隧道代理服务。

也欢迎大家关注iDataRiver平台 https://idatariver.com/zh-cn ,将会持续供应更多优质服务。

隧道代理的出现

先谈谈为什么会出现隧道代理这个东西,本质原因就是使用便捷,懒惰是生产力的巨大推力,而隧道代理则很好的满足了省时省力的特点。

传统的代理业务基本上都是提供一批ip:port列表,用户需要自己维护一个ip代理池,这个池子要做很多事情。

比如代理失效时需要监测到并剔除。需要自行控制代理的使用间隔,间隔太短容易被风控,间隔太久则利用率不足。需要定期监控代理池里的可用代理数量,如果太少了需要及时补充。以上功能都需要花费较多精力去维护使用,也就是说在业务还没开始使用的情况下要先花精力去维护一个代理池。

而且提取代理基本上是按条数收费的,但有些场景下条数与我们的使用量并不呈线性关系,因为提取出来的代理不管有没有用,都会进行扣费。

基于以上原因,如果有一个服务能直接满足上面的功能,且按使用量扣费,则会极大简化使用门槛,而隧道代理则刚好是做这件事的。

当前隧道代理现状

通过调研隧道代理的市场现状,我们总结了以下几点值得改进的地方。

起步价高

大多数都设置了预购门槛,对新用户不友好,因为几乎所有业务都需要在一开始使用较低成本去验证代理是否能满足业务需求。

限制使用时长

绝大多数服务商会限制流量包的有效期,一般是一个月,短的也有一星期,这种情况下对业务使用不规律的场景不友好,很可能购买的流量包还没用完就已经过期了,造成不必要的浪费。

代理类型参差不齐

常见的代理场景主要是数据中心代理,住宅代理和移动代理,而且每种代理都支持按照国家/城市定位进行筛选。目前市面上各供应商在这方面参差不齐。

依旧存在一定使用门槛

在使用不同代理类型或进行地区切换的时候,需要的文档繁琐,虽然比传统代理简洁,但依旧有上升空间。

我们的优化

当前常规的隧道代理使用HTTP(s)/SOCKS5协议进行调用,但是这种方式并不清晰,考虑到需要在调用的时候传入用户鉴权信息,代理类型,国家切换等各种参数,这些参数只能放在proxy url里拼接后发给服务端,随着控制场景的细化,proxy url会变得很不优雅。

考虑到使用隧道代理的绝大多数场景都是api的代理请求,因此直接将代理的使用内置在api请求里即可,这样使用代理就跟发起一个普通请求一样方便,至于控制代理场景的配置参数则可以很方便的在json payload里设置字段控制。

优化调用

下面以python的requests库对比两种使用

传统的代理使用如下

python 复制代码
import requests

proxies = {
    'http': 'http://userid-proxytype-1-proxycountry-us-***:password@api.idatariver.com',
    'https': 'http://userid-proxytype-1-proxycountry-us-***:password@api.idatariver.com',
}

res = requests.get('https://google.com', proxies=proxies)

优化后使用如下

python 复制代码
import requests

payload = {
    'apikey': 'idr_****',
    'proxy_type': '1',
    'proxy_sid': '',
    'proxy_country': 'us',
    'url': 'https://google.com',
    'method': 'GET',
}

res = requests.post('https://api.idatariver.com/proxy/request', json=payload)

可以看到所有的代理控制参数都在payload里清晰可见,而不是放在proxy url里进行字符串拼接,同时对于鉴权场景也非常简单,只需要传入apikey即可标识用户进行扣费。

可自定义是否切换ip

默认情况下每次请求都会随机更换ip。

在某些场景下,你需要在同一个会话中的多次请求中保持同一个ip,为了防止每次ip自动切换,你可以通过设置 proxy_sid 来保持ip不变。

如果不传 proxy_sid 或传入空字符串,则每次请求都会随机更换ip

考虑到ip代理的存活时间具有不稳定性,建议将会话时长控制在5分钟内,否则可能会失效。

支持范围广

可无缝接入全球两百多个国家。

优化计费方式

此外,我们在response headers里返回了自定义参数,告诉用户本次请求实际消费积分数量等,做到计费清晰明了。

通过优化计费方式,对于绝大多少场景来说,都按照调用次数扣费,所以并不需要提前购买流量包,因此没有预购门槛,同时也没有流量有效期,这对初始用户将会非常优化。

而对于单个请求流量较大的场景,我们会对超出部分的流量进行按流量计费,扣费明细将会返回在header里的x-idatariver-credits字段里。

简而言之,在一个http请求里,你可以灵活的使用我们所有的代理产品场景,而无需预购套餐包。

总结

通过对当前隧道代理市场的现状分析,我们结合用户最关心的使用体验进行了多处优化,通过一个简单的http请求便可访问我们所有的代理产品,而无需在后台做各种配置,感兴趣的可直接前往使用 https://idatariver.com

相关推荐
聊点儿技术13 小时前
IP风险等级评估在保险承保中的三个核心应用场景——从投保核验到持续监控
服务器·金融·ip·保险·ip风险评估·ip风险等级·风险评估api
2401_841495642 天前
Linux C++ TCP 服务端经典的监听骨架
linux·网络·c++·网络编程·ip·tcp·服务端
551只玄猫2 天前
【计算机网络 实验报告5】IP层协议分析
网络·网络协议·计算机网络·课程设计·ip·实验报告
2401_873479402 天前
应急响应:勒索软件攻击源IP分析,如何通过IP地址查询定位辅助溯源?
网络·tcp/ip·安全·网络安全·ip
科技牛牛4 天前
AI爬虫vs网站封禁:IP封锁大战升级
人工智能·爬虫·ip
聊点儿技术4 天前
IP欺诈风险查询+动态信用分模型:如何作为特征融入用户信用分
大数据·人工智能·ip·用户运营·ip风险·ip风险画像·欺诈风险查询
聊点儿技术4 天前
IP归属地诊断5步法:定位账号限流的技术根源
大数据·ip·跨境电商·tik tok·ip归属地查询·ip地址查询·查ip地址
IpdataCloud5 天前
大数据分析:如何高效查询海量IP归属地?
tcp/ip·数据挖掘·数据分析·ip
聊点儿技术5 天前
从“查到”到“用对”:查IP归属地后的5步决策框架
ip·电商·ip归属地查询·广告投放·风控·金融风控·ip地址查询
IT小Qi6 天前
iperf3网络测试工具
网络·python·测试工具·信息与通信·ip