首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >请求未到达FastAPI服务器

请求未到达FastAPI服务器
EN

Stack Overflow用户
提问于 2021-03-16 00:39:07
回答 1查看 412关注 0票数 2

我当时在做Flask微服务,我需要用FastAPI重写它,但是我有一个用Flask没有的问题。

问题是我发送的请求不会无限期地到达服务器。为了解除请求,例如使用Postman或Hoppscotch,我取消了请求,然后重新发送相同的请求,它工作得很好。我也尝试了curl,但我不能重现这个问题,请求在第一时间起作用。

我正在使用uvicorn,并且我尝试使用其他ASGI服务器,并且我使用Hypercorn重现了这个问题。然而,我尝试用Daphne重现了它,并且它工作了。

我没有错误消息,因为请求被卡住了,服务器永远不会捕捉到它。

我不能提供一个最小的可重现的例子,因为我不能创建一个。事实上,我初始化了一些FastAPI项目,没有一个项目有这个问题。我有这个bug的项目有很多后台代码,并使用多进程和线程,也许这就是问题的原因?

我尝试了很多方法来理解是什么导致了这个问题。你有什么想法可以产生我上面描述的东西吗?

EN

回答 1

Stack Overflow用户

发布于 2021-03-16 05:09:15

Asyncio主要被认为是一个单线程程序,它可以在空闲时刻切换任务,例如等待I/O。

在medium上有一篇很好的文章,解释了asynciomultithreading之间的区别,以及如何在前者上实现后者。

https://medium.com/analytics-vidhya/asyncio-threading-and-multiprocessing-in-python-4f5ff6ca75e8

也就是说,由于没有源代码,很难说问题出在哪里。如果所有其他项目都可以工作,而您的项目不能工作,那么这要么是您的配置/设置,要么是您添加的代码的一部分。

PS有时我在windows上遇到了类似的问题,而在linux上却从未遇到过。它发生在启动时出现错误,这并不依赖于我的代码。虽然在新版本的anymore...maybe中我没有遇到这个问题,但它得到了修复。这可能是问题的根本原因,但我无法在没有代码的情况下判断。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66642038

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档