Rest 如果数据库服务器超时,将HTTP 504网关超时作为响应返回是否合适?

Rest 如果数据库服务器超时,将HTTP 504网关超时作为响应返回是否合适?,rest,timeout,http-status-code-504,Rest,Timeout,Http Status Code 504,在REST服务中,当应用程序等待数据库查询超时且无法完成客户端请求时,返回504状态代码是否合适 504网关超时 服务器充当网关或代理,未收到来自上游服务器的及时响应 目前,我们只是显示一个通用500错误,它在UI中显示为通用服务器错误。向用户显示这是一个数据库超时错误(可能还有减少他们要求的范围的建议)有一定的实用性,因为如果他们联系负责他们服务器的人,至少他们可以获得更多有用的信息 任何指向其他REST服务如何处理数据库超时的指针?我也会返回500,在有效负载中详细说明出错的原因。以下是

在REST服务中,当应用程序等待数据库查询超时且无法完成客户端请求时,返回504状态代码是否合适

504网关超时

服务器充当网关或代理,未收到来自上游服务器的及时响应


目前,我们只是显示一个通用500错误,它在UI中显示为通用服务器错误。向用户显示这是一个数据库超时错误(可能还有减少他们要求的范围的建议)有一定的实用性,因为如果他们联系负责他们服务器的人,至少他们可以获得更多有用的信息



任何指向其他REST服务如何处理数据库超时的指针?

我也会返回500,在有效负载中详细说明出错的原因。以下是对504的说明:

服务器在充当网关或代理时,未收到 URI指定的上游服务器的及时响应(例如。 HTTP、FTP、LDAP)或它需要的其他辅助服务器(如DNS) 在尝试完成请求时访问


504的错误描述表明服务器充当网关或代理,而您的服务肯定没有这样做。

从技术上讲,他的服务不是充当数据库服务器的代理吗?我认为,如果他的应用程序是数据库的API包装器,提供了创建表和插入元素等API操作,那么它只是一个代理。如果它使用数据库作为API功能的一部分,但不是真正的“数据库API”,那么数据库将是一种资源,而API将不是代理。