有没有一种方法可以让客户端连接到后端并等待来自外部源的ping



当用户从客户端应用程序(Angular(向我的后端应用程序(Node(发出请求时,我有一个用例,该应用程序手动在Airflow上运行任务。Airflow没有等待完整的运行来响应后端并确认任务正在运行。

我能做的就是向后端发出一个HTTP请求,告知任务已经完成。

那么,有没有一种方法可以让客户端等待来自我的后端服务器的响应,该响应将在使用Airflow ping完成任务时返回?

您可以每隔X秒从后端提取一次事件,而不是实现从气流到后端的复杂推送事件。例如,后端提交查询气流API来运行dag,然后每隔1秒检查一次运行是否完成,一旦完成,它就会响应客户端请求。

但是,如果你想等待的事件需要很长时间,最好只注册查询,然后通过电子邮件/消息发送结果
例如,如果客户端想要准备一些数据,并且要这样做,后端应该运行Airflow dag,因此,您可以通过消息the query is successfully registered发送200,而不是阻止客户端请求,并在Airflow dad中添加一个额外的任务,以便在数据准备好时将结果发送给客户端。

最新更新