想法记录--http封装celery

4 篇文章 0 订阅
1 篇文章 0 订阅

前提

celery是分布式任务队列,使用起来也十分方便,但是,在项目中会有所限制,不能把相关代码独立。导致有时候项目很臃肿。

之前的文章中提到了把celery相关的做成基础库,来摆脱限制,但是有些不合理,不能够使用celery的一些特性,譬如频率限制等。但是,这也不方便且不合理:做成基础库之后需要再每个使用到相关任务的工程所在的机器或是容器装一遍。

使用原味的celery如何解决

参考之前在github上面有个项目是把rpc服务转化为http服务,这样,rpc服务不仅可以通过rpc调用,也可以通过http调用。

那么celery是不是可以使用同样的方法:把celery里面的任务映射到url上,再包装到http协议上或是rpc协议上,然后在http或rpc中调用celery的异步方法即可。

这样做可以把celery中的异步任务独立出来,做成公共基础库,扩展也方便。但是相对于直接使用celery,会有所延迟。

如果是对celery任务执行不需要立马获得结果或是有很多个工程都需要进行相同的异步任务处理,那么,用http封装起celery是可行的。

此为本人的个人想法,还未实施。

使用容器方便基础库使用:

做一个基础镜像包含基础库即可

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值