Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in / Register
Toggle navigation
G
g4proxy
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Administrator
g4proxy
Commits
de1c827f
Commit
de1c827f
authored
Feb 19, 2019
by
Administrator
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
方案简述
parent
1408571f
Pipeline
#328
failed with stages
Changes
1
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
26 additions
and
1 deletion
+26
-1
README.md
README.md
+26
-1
No files found.
README.md
View file @
de1c827f
# g4proxy
使用手机4G流量提供高质量的代理服务
\ No newline at end of file
使用手机4G流量提供高质量的代理服务
考虑抓取服务,需要使用稳定的代理ip。一般我们会使用代理服务供应商的代理。分:
1.
免费代理,如西刺
[
西刺
](
https://www.xicidaili.com/nn/
)
特点:全网扫描得来,并不稳定。因为不是自己维护的节点,而是通过类似漏洞的方式拿到其他人提供的免费的无鉴权的接口。服务不稳定,DNS解析失败等
2.
收费共享代理,如代理云:
[
代理云
](
http://www.dailiyun.com/
)
第三方提供的代理服务。较为稳定,也有独享类型。不过价格教贵,且无法自己控制拨号
3.
购买ADSL,半自建方式。在其他供应商那里购买ADSL线路进行拨号放大ip,这个能够自己独立控制拨号,ip空间一般能够做到百万级别的映射。但是投入较高,且一旦ip被污染,损失非常巨大。这种方案适合公司内部统一的代理服务建设。
以上所有方案,ip均来自服务或者小区宽带。服务器ip特征很明显,大部分用户不会使用服务器ip入网。小区宽带一般在家里使用WiFi的时候使用。但是小区宽带的ip,多有网段特性。一般一个小区的ip资源,会固定在某个网段下。这会导致我们的ip会有特征暴露问题。
目前,考虑使用手机4G提供代理服务。相对于宽带来说,4G流量放大空间更广。且可以部署在较为繁华的地方。及其容易隐藏在真实用户流量下。
## 面临的问题
最大的一个问题,手机的移动特性很大。没有固定ip,无法直接通过代理服务器的方式,提供代理服务集群。我考虑使用长连接的方式解决这个问题。
## 基本方案
1.
提供一个统一的代理服务器,部署在公网(netty http/https proxy)
2.
提供一个手机程序,作为agent部署在装有4G卡的手机里面
3.
手机agent通过长连接的方式,和server建立channel。并保证 idle channel>=1 (也即,至少拥有一个空闲的channel,如果有很多的代理请求,那么可能有其他请求使用了channel,当channel资源不够的时候,agent异步的主动链接服务器建立channel通道)
4.
所有在服务器的channel,安装clinet id分组。构建资源池。在进行代理转发的时候,提供资源管理模型
5.
当用户的代理请求调用过来的时候,在channel资源池中,根据需要选择一个channel,转发请求(考虑通过固定header绑定到固定的手机下面,可以使用一致性hash算法)
6.
考虑多台代理服务器的实现
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment