投稿    登录
  博主录制的Python3爬虫视频教程已发布!详情请戳Python3爬虫视频教程!希望大家支持!非常感谢!

小白进阶第七篇(Splash负载均衡)

未分类 哎哟卧槽 274浏览 0评论

对于Scrapy处理Ajax 处理方式当然是同家兄弟Splash比较靠谱!

但是Splash有个很坑爹的毛病就是负载承受相对较小·· 一不留神就GG了·········· 然后也就没有然后了~~!

所以准备给Splash做一个负载均衡;后端放一大堆的Splash这样总不会GG了吧。

就算其中一个GG了还有其它的可替代不是?

废话不多少开整··

环境是基于:

CentOS 7.3

Docker 17.06.2-ce

Splash 3.0

HAproxy 1.7.9

(CentOS大家可以将yum切换为阿里云的yum源  Docker同理)

阿里yum源: http://mirrors.aliyun.com/help/centos  照葫芦画瓢做一遍(你是CentOS7啊!!!!不要选成其他版本了)

注意以下只需要在你需要运行splash的机器上安装即可

阿里Docker源:

安装Docker加速器:

重启Docker:

这样可以极快的速度拉取镜像。

获取splash最新的docker镜像:

关闭所有机器防火墙firewalld(网络安全的环境关闭,不安全的环境请放行端口,自行百度):

创建Splash配置文件目录:

启动Splash:

docker run  启动一个容器

-d 后台启动

-p 8050:8050  将容器的8050端口和物理机的8050端口绑定(可以从8050端口访问容器服务应用)

–memory=5.0G 容器最大使用内存为5.0GB,超出这个限制会被主进程杀死(使用free -mg  查看并酌情设置你的内存使用)

–restart=always 容器退出后无条件重启(满了5GB被杀死,然后重启 释放内存)

–name splash  容器的名字叫splash(可以忽略)

-v ******  三个-v参数是将宿主机的目录挂载进容器,便于容器能够直接访问挂载目录中的内容

scrapinghub/splash:master  用于启动容器的镜像

–maxrss 4500 Splash最大内存使用为4500MB

查看容器是否启动:

访问Splash是否正常工作:

请注意:以上操作只需要在你需要运行splash的机器上安装即可

 

安装HAproxy实现负载均衡:

 

安装zlib-devel(HAproxy使用gzip功能):

 

安装HAproxy:

 

配置HAproxy Conf:

写入以下内容:

启动HAproxy:

 

查看HAproxy状态:

用户名和密码为: admin  adminpass

查看HAproxy负载是否生效:

 

完美!!!收工!!

 

注意:HAproxy这台服务器没有安装Splash服务,是负载到其余安装有Splash的服务器上提供的服务器哦!

转载请注明:静觅 » 小白进阶第七篇(Splash负载均衡)

喜欢 (9)or分享 (0)

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请狠狠点击下面的

想结交更多的朋友吗?

来进击的Coder瞧瞧吧

进击的Coder

QQ群号 99350970 立即加入

进击的Coder灌水太多?

这里是纯粹的技术领地

激进的Coder

QQ群号 627725766 立即加入

想找人聊天解闷?想要学习干货?

微信公众号进击的Coder为你打造

进击的Coder

微信公众号 扫一扫关注