有个需求是,把其他好几个个网站的数据爬取出来(有些网站也直接用 api 读取到数据),然后,在自己的服务器把这些问题整合起来,在开放接口给用户调用。
现在的问题是:
可以把 web 接口(开放给我们客户使用的)和定时爬取数据的定时任务放在一个单独的应用进行部署。也可以把定时爬取任务和 web 接口(开放给我们客户使用的)分开单独部署。这两种方式那种更合适,都有什么优缺点?
一边用定时任务去爬取数据,然后,写入数据库。另外用户可能也正在读取数据库的同一张表的数据。这样会影响到读取数据的速度吗?
1
lihongjie0209 2018-03-25 21:17:25 +08:00
1. 单独部署的好处估计是你去维护爬虫的时候 web 接口的服务不需要停掉
2. 数据库不熟, 不知道 |
2
brickyang 2018-03-25 21:34:57 +08:00 via iPhone
不谈规模没有太多讨论的意义。
小规模下都能满足需求,以快速上线为准。大规模下也可能分布式和数据库读写分离是唯一选择。 如果你不确定是否有必要分开,那往往说明不需要。 |