我正在研究OCR应用程序。我将docker用于我的应用程序。该应用程序包含4个容器。
AllinOne容器通过API调用集成了所有其他容器。这些API是使用Flask实现的。 AllinOne容器暴露给服务器。工作流程如下,邮递员(用户请求)-> AllinOne->转换器-> AllinOne->清理程序-> Allinone->转录器-> Allinone-> Postman(响应)
现在,我正在尝试向我的应用程序添加一个名为批量上传的功能,用户可以在其中上传.zip文件。由于批量处理,上载需要更长的时间来处理,因此我需要有关过程状态的中间结果。我为正在上传的每个文件分配了一个file_id。我需要将file_id返回给用户,以便他们能够检查其文件的处理状态。但是,处理必须在后台进行。
如果我返回file_id,则处理将停止,否则,只有在处理完文件之后,file_id才会返回,这是没有用的。我应该实现两个API调用吗?一个用于上载文件并返回file_id,另一个用于处理文件并返回结果。是否可以通过API发送频繁的更新作为响应?能做得更好吗?随时建议架构的任何更改。
谢谢,克里希纳·普拉萨德(Krishna Prasad)A>
我正在研究OCR应用程序。我将docker用于我的应用程序。该应用程序包含4个容器。转换器(将PDF转换为图像)清洁器(清除图像)转录器(转换...
REST-API是同步的,但您的处理不必是同步的。您可能应该更改架构,以便HTTP-POST仅创建所有必要的作业并返回用户以后可以检查的ID。