为什么要开发爬山虎

0x01、希望给广大PHP码友提供一种更多的选择

目前圈内已经存在各种语言版本的优秀爬虫框架,比如:基于python的scrapy、基于Java的Spiderman、 基于Go语言的go-colly等等,但是在Workerman或Swoole的加持下,PHP在此领域同样有可用武之地。 从某种意义上来说,爬山虎只是爬虫框架的PHP语言版的一种补充,所以作者希望爬山虎能为广大PHP码友提供一种额外的选择。 爬山虎的初心是: 着力于高效敏捷开发,让爬取工作变得更加简单。

0x02、解决传统PHP爬虫框架的性能和扩展问题

传统的PHP爬虫框架普遍有两大不足:
一个是大多为单进程工作模型,另一个是大多为同步工作模式,换句话即看不到socket的身影,因此无法做到分布式以及分离式部署,因此无法最大化发挥爬虫性能【然政策使性能蒙上了阴影】;而爬山虎是基于 workerman 开发的,能够轻松支持如下架构:异步通信 + 多进程 + 分布/离式部署 + 事件驱动,从而保证了爬山虎强劲的性能;此外,爬山虎采用了内核 + 插件 + 分离式部署的设计理念,所以具备强扩展性。

results matching ""

    No results matching ""