celery - 如果是apache超集,gunicorn worker 和celery worker 有什么区别

标签 celery gunicorn apache-superset

在 Superset 的文档中,他们使用以下命令启动 Gunicorn 工作人员和 celery 工作人员:

gunicorn -w 3  -k gevent  --timeout 120  -b 0.0.0.0:8088  superset:app

celery --app=superset.tasks.celery_app:app worker --pool=prefork -O fair -c 4

谁能解释一下 Superset 背景下的 Gunicorn 工作人员和 celery 工作人员之间的区别吗?也就是说,gunicornworker 执行什么任务,celeryworker 执行什么任务。

最佳答案

Apache Superset,作为一个网络服务,需要一些东西来为通过网络浏览器连接的客户端提供服务 - 这就是gunicorn 来救援的地方。这些gunicorn worker 在那里处理客户请求。

然而,Celery 工作线程用于卸载可能需要很长时间和/或需要大量资源(CPU 功率、磁盘空间等)的各种任务。通常,Celery 工作线程是分布式的,Celery 集群可按需扩展/缩小。在 Superset 中,Celery 工作人员可以被告知发送计划的警报和报告、访问仪表板和报告以获取这些报告的屏幕截图、获取仪表板预览缩略图以及预热某些报告的缓存。

关于celery - 如果是apache超集,gunicorn worker 和celery worker 有什么区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/75542181/

相关文章:

python - 如何覆盖主 celery 中的__call__?

python - 在谷歌应用程序引擎灵活环境中使用stream_with_context在 flask 中加载栏

docker - Docker + Nginx允许来自外部docker的上游gunicorn

apache-superset - Apache Superset 中的漏斗图

superset - Superset 是否支持后台异步数据源刷新?

python - 防止重复的 celery 记录

django - 如何找出 Celery 设置中缺少的内容?

Python Celery 试图在 docker-compose 中占用一个端口号并产生问题

python - 如何处理来自不同 Gunicorn fork 的交错异常?

sql - 在 Apache Superset 中添加 Druid 集群作为 SQL 数据库