是否可以在 Finatra 服务器中设置 HTTP 请求响应超时?
http 控制器回调通常返回一个 Future,一旦解决,就会传输响应。我想在 Finatra 中定义服务器在返回 500 或 400 响应之前应该等待多长时间。
您可以扩展 HttpServer 并定义自己的超时
trait CustomServer extends HttpServer with Tls {
然后覆盖configureHttpServer方法并定义超时、请求站点和其他属性
override def configureHttpServer(server: Http.Server): Http.Server = {
server.withAdmissionControl.concurrencyLimit(maxConcurrentRequests = 2000, maxWaiters = 0)
.withResponseClassifier(HttpResponseClassifier.ServerErrorsAsFailures)
.withMaxRequestSize(StorageUnit.fromMegabytes(200))
.withRequestTimeout(50.seconds)
}
我认为,您正在寻找Future.within