9

我希望 Celery 建立在 Redis 而不是默认的 RabbitMQ 上。

芹菜文档解释说:

配置很简单,只需配置你的 Redis 数据库的位置:

BROKER_URL = 'redis://localhost:6379/0'

URL 的格式为:

redis://:password@hostname:port/db_number

方案后的所有字段都是可选的,并且将默认为端口 6379 上的 localhost,使用数据库 0。

但是,我将 Redis 设置为不监听端口,而是监听套接字。

是否有支持这一点的 URI 方案?

4

2 回答 2

17

Redis 套接字从 Celery 1.3 开始可用。语法是:

BROKER_URL = 'redis+socket:///tmp/redis.sock'

如果要使用特定数据库:

BROKER_URL = 'redis+socket:///tmp/redis.sock?virtual_host=1'

该文档不是最新的,但您可以查看此问题以获取更多详细信息:

于 2014-09-10T15:38:29.623 回答
1

celery redis broker 不支持socket连接,目前只支持TCP连接。

经过一番谷歌搜索后,我在 github 上找到了这个项目celery-redis-unixsocket 。如果这对你有用,你可能会看看。

于 2013-04-23T14:29:42.410 回答