我希望Celery能够在Redis上构建而不是默认的RabbitMQ。
配置很简单,只需配置Redis数据库的位置:
BROKER_URL = 'redis://localhost:6379/0'
网址格式为:
redis://:password@hostname:port/db_number
该方案之后的所有字段都是可选的,并且将使用数据库0默认为端口6379上的localhost。
但是,我让Redis设置为不听端口,而是收听套接字。
是否有支持此方案的URI方案?
答案 0 :(得分:15)
自Celery 1.3起,Redis插座可供使用。语法是:
BROKER_URL = 'redis+socket:///tmp/redis.sock'
如果您想使用特定的数据库:
BROKER_URL = 'redis+socket:///tmp/redis.sock?virtual_host=1'
文档不是最新版本,但您可以查看此问题以获取更多详细信息:
答案 1 :(得分:1)
芹菜redis代理不支持套接字连接,目前唯一支持TCP连接。
我在google搜索后在github上找到了这个项目celery-redis-unixsocket。你可以看看它是否适合你。