V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  resolvewang  ›  全部回复第 7 页 / 共 7 页
回复总数  131
1  2  3  4  5  6  7  
@julyclyde 不能,它还是会继续执行被中断的任务
@julyclyde 是的,我不关命令行窗口,它就会自动再运行。关了就没事
@xyjtou 没呢。由于我是在做功能测试,所以并没有用 celery beat,也没用有 supervisor 来管理
2017-05-01 10:46:58 +08:00
回复了 resolvewang 创建的主题 问与答 docker 如何绑定公网 ip
@ik 希望能给一个比较详细的答复,谢了
2017-05-01 10:46:23 +08:00
回复了 resolvewang 创建的主题 问与答 docker 如何绑定公网 ip
@whileFalse 您可以回答详细一点吗?你说的开代理指的是在 centos 上搭建一个代理服务器?搭建的代理服务器可以代理所有剩下的 ip 吗?或者是通过 docker 的方式搭建?

还是你的意思是说,通过抓取网上公开的免费代理来搭建一个代理服务器使用?

如果你的意思是前者的话,可以给我说说具体怎么做吗?如果是后者的话,那需求是满足不了的,因为微博异地登录会有验证码。而且代理 ip 的速度巨慢。
2017-05-01 10:46:23 +08:00
回复了 resolvewang 创建的主题 问与答 docker 如何绑定公网 ip
@whileFalse 您可以回答详细一点吗?你说的开代理指的是在 centos 上搭建一个代理服务器?搭建的代理服务器可以代理所有剩下的 ip 吗?或者是通过 docker 的方式搭建?

还是你的意思是说,通过抓取网上公开的免费代理来搭建一个代理服务器使用?

如果你的意思是前者的话,可以给我说说具体怎么做吗?如果是后者的话,那需求是满足不了的,因为微博异地登录会有验证码。而且代理 ip 的速度巨慢。
2017-05-01 10:06:27 +08:00
回复了 resolvewang 创建的主题 问与答 docker 如何绑定公网 ip
@ik 你好,我网络方面知识比较薄弱,感谢你的回答。我还有一些疑问,你是指直接在 centos server 上绑定多个公网 ip 吗?如果 server 上只有一张网卡,可以绑定多个 ip 吗?期待您的回答,感谢!
2017-04-28 16:49:13 +08:00
回复了 resolvewang 创建的主题 问与答 celery 定时任务如何不延迟执行
@ryd994 是的,确实可以直接用 crontab,但是服务器是 windows。我想使用 celery 来调度抓取任务,因为抓取是需要长时间运行的,为了提高抓取效率,所以使用 celery 做分布式任务调度。先前我是直接在存 cookie 的时候设置了过期时间,也是通过轮询 redis 检查是否有有效 cookie 可用。

感谢回答!感觉收获了不少。
2017-04-28 14:49:03 +08:00
回复了 resolvewang 创建的主题 问与答 celery 定时任务如何不延迟执行
@ryd994 这样的话我必须手动判断登录任务是否执行了吗?有不有啥可以自动判断的方法,让登录执行完成后我就可以马上执行抓取任务?
实际情况是这样的:我要定时登录微博做数据采集,微博的 cookie 是 24 小时失效,我就必须每天让(多个)账号登录一到两次(如果频繁做模拟登陆也会被封号),每次成功登录后把 cookie 存入 redis。如果我设置 crontab(minite=0, hour='*/10')的话,它会在 10 的倍数的整点执行登录任务吧。比如我在早上 11 点执行了 beat,那么得等到晚上 20 点登录任务才会被 worker 执行吧。第一次执行抓取任务也得等到晚上 20 点过后了吗?并且我到了那个点(晚 8 点)还要手动在命令行输入 "celery -A login worker" 来启动 worker 吗?

感谢耐心解答,我最近才接触 celery 和分布式的东西,问题比较多,感谢多多包涵。
2017-04-28 10:11:41 +08:00
回复了 resolvewang 创建的主题 问与答 celery 定时任务如何不延迟执行
@ryd994 我的情况是这样的:由于一个爬虫需要周期性的获取到 cookie。所以我想做一个定时登录的模块,不可能让抓取程序都运行了过后,登录模块还没运行吧。所以我想在 beat 启动的时候就调用 login 的方法。

经过您的提醒,我觉得这样设计好像是有道理的。所以第一次调用 login 就必须再使用一个命令给 worker 发送任务吗?
2017-04-28 10:08:24 +08:00
回复了 resolvewang 创建的主题 问与答 celery 定时任务如何不延迟执行
@gulu 是的,我是想在启动的时候就调用 test_timertask()这个方法。你的意思是直接再通过客户端手动调用一次 test_timertask()?
1  2  3  4  5  6  7  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2759 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 13ms · UTC 07:45 · PVG 15:45 · LAX 23:45 · JFK 02:45
Developed with CodeLauncher
♥ Do have faith in what you're doing.