celery 每过一阵子就假死,看日志说是 redis 端口连接不上。然后去看 redis 状态又正常,感觉是 celery 和 redis 互相甩锅

2019-08-28 12:20:28 +08:00
 miniyao
没办法,只好重启服务器,celery 和 redis 又都开始正常工作了。

有什么方式监控吗?否则 celery/redis 什么时候出现故障趴窝了都不清楚
4299 次点击
所在节点    Python
21 条回复
julyclyde
2019-08-28 12:23:21 +08:00
看队列长度就行了
llen events
miniyao
2019-08-28 12:37:25 +08:00
@julyclyde 和 redis 的 connection 都每建立,看不到队列长度了。比较奇怪的是 redis 其实没宕,但是 celery 里的日志说连不上 redis

redis.exceptions.ConnectionError: Error 111 connecting to localhost:6379. Connection refused.
tulongtou
2019-08-28 12:39:43 +08:00
换 rabbitmq 吧,官方也是推荐 rabbitmq,我用了两年多了,很稳
julyclyde
2019-08-28 12:41:22 +08:00
@tulongtou 你这个回答没什么用
julyclyde
2019-08-28 12:41:55 +08:00
@miniyao 猜测是 celery 的 fd 耗尽了,无法建立新的连接?
binjjam
2019-08-28 12:57:36 +08:00
redis timeout 参数是多少?非 0 的话试试改为 0 看
zuoakang
2019-08-28 13:08:04 +08:00
celery 什么版本呢? 用了 celery beat 功能吗?
Ehco1996
2019-08-28 13:41:39 +08:00
是不是和 redis 链接的时候没有用连接池?
链接耗尽了?
no1xsyzy
2019-08-28 15:35:03 +08:00
@tulongtou 查 celery error 111 都是 rabbitmq 的问答……
wuwukai007
2019-08-28 16:00:16 +08:00
我也遇到过,redis 连接不上,重启就好了
wuwukai007
2019-08-28 16:36:47 +08:00
后来查看 redis 日志,发现 rdb 存储问题,配置一下 redis 后基本就没遇到过这个问题
miniyao
2019-08-28 19:20:33 +08:00
@wuwukai007 rdb 存储问题,你配置了 redis 哪几个参数后变得稳定?
MeteorCat
2019-08-28 19:39:23 +08:00
服务器是不是默认 fd 为 1024
janus77
2019-08-28 22:26:43 +08:00
互相甩锅笑死
lauix
2019-08-28 22:38:44 +08:00
redis 不适合大队列,已经踩过坑了,改成 rabbitmq 稳的很!
15399905591
2019-08-29 08:56:31 +08:00
我之前也碰到类似问题,是卡在 redis 的阻塞 blpop, 网上查了资料,说是 redis 版本问题,升级了 redis3.2 就完事了
sazima
2019-08-29 09:01:20 +08:00
crontab 每周重启一次 #狗头
LeeSeoung
2019-08-29 09:33:53 +08:00
出问题的时候先在本机 telnet redis 看是不是真的连不通
wuwukai007
2019-08-29 09:51:03 +08:00
@miniyao # Failed opening .rdb for saving: Read-only file system 之前报的这个错,顺着这个 google 改了配置,改了什么忘了,但是 google 应该有的。
julyclyde
2019-08-29 10:22:39 +08:00
@wuwukai007 read-only filesystem 那是你硬盘坏了!!

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/595835

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX