想在 flask 中加一个数据处理层, 这个层与 flask 逻辑为分开的,只是共用一套模型层代码,大佬有好的组件推荐么?

2019-10-15 15:33:27 +08:00
 15399905591
该数据处理层是异步的,可以做定时任务,也可以做异步任务
3070 次点击
所在节点    Python
12 条回复
Latin
2019-10-15 15:36:26 +08:00
不想重复做轮子就 celery
15399905591
2019-10-15 15:40:52 +08:00
@Latin celery 怎么做异步任务呢? 我这里的异步任务是指第三方系统推送一个消息过来,我这边接受到后读取并执行指定任务
wangyzj
2019-10-15 15:45:14 +08:00
@15399905591 celery 只是一个任务执行框架,你把任务推过去就行了,第三方消息接收还是需要 flask,或者你单独做一个队列 kafka 之类的处理
15399905591
2019-10-15 16:38:34 +08:00
@wangyzj 那第三方怎么推送任务呢?我使用 celery 定义了一个任务,我现在需要一个第三方系统去触发,使用 http api 又有安全问题,这个时候我应该怎么推送任务呢?。
Jemini
2019-10-15 16:52:06 +08:00
celery 有定时任务啊!可以定时触发么
imycc
2019-10-15 17:03:38 +08:00
使用 celery 的话,简单点的模型就是 API ---(celery)---> MQ ---(celery)---> Worker 这样。
依旧是通过 API 对第三方提供服务,安全问题可以通过认证、白名单等方式来解决。
celery 主要是起到一个任务队列的作用,将 API 这段接受到的任务推给 worker 去处理。
wzwwzw
2019-10-15 18:52:25 +08:00
celery 吧,定时,异步都符合了。http api 做好认证,ip 白名单,问题不大。
SjwNo1
2019-10-16 09:37:51 +08:00
cron & celery
Latin
2019-10-17 11:07:53 +08:00
@15399905591 做个 restful api 接收异步回调,然后调用 celery 任务就好了啊
15399905591
2019-10-21 16:45:13 +08:00
@Latin 使用 http 性能是个严重的问题
Latin
2019-10-22 09:02:53 +08:00
@15399905591 那就长连接,用 websocket,再不济你用 rpc
Harlaus
2019-10-22 10:19:59 +08:00
APScheduler

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

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

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

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

© 2021 V2EX