当我们使用nodejs作为后台服务器时, 由于nodejs本身是单线程的,所以当爬取请求传入nodejs时, nodejs不得不等待这个"耗时任务"完成才能进行其他请求的处理, 这样将会导致页面其他请求需要等待该任务执行结束才能继续进行...好在nodejs设计支持子进程, 我们可以把爬虫这类耗时任务放入子进程中来处理,当子进程处理完成之后再通知主进程....整个流程如下图所示:
nodejs有3种创建子进程的方式, 这里我们使用fork来处理, 具体实现方式如下:
// child.js
function computedTotal(arr, cb) {...const res = fork(childUrl)
// 通知子进程开始work
data && res.send(data)
return new Promise(reslove...项目使用的技术文档地址
apify 一款用于JavaScript的可伸缩的web爬虫库
Puppeteer
koa -- 基于nodejs平台的下一代web开发框架
最后
如果想学习更多H5游戏, webpack