aboutsummaryrefslogtreecommitdiff
path: root/src/main/scala/xyz/driver/core/rest/DriverRoute.scala
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/scala/xyz/driver/core/rest/DriverRoute.scala')
-rw-r--r--src/main/scala/xyz/driver/core/rest/DriverRoute.scala7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/main/scala/xyz/driver/core/rest/DriverRoute.scala b/src/main/scala/xyz/driver/core/rest/DriverRoute.scala
index fe3790f..55f39ba 100644
--- a/src/main/scala/xyz/driver/core/rest/DriverRoute.scala
+++ b/src/main/scala/xyz/driver/core/rest/DriverRoute.scala
@@ -32,7 +32,11 @@ trait DriverRoute {
val tracingHeader = RawHeader(ContextHeaders.TrackingIdHeader, trackingId)
MDC.put("trackingId", trackingId)
- respondWithHeader(tracingHeader)
+ // This header will eliminate the risk of LB trying to reuse a connection
+ // that already timed out on the server side by completely rejecting keep-alive
+ val rejectKeepAlive = Connection("close")
+
+ respondWithHeaders(tracingHeader, rejectKeepAlive)
}
}
@@ -103,4 +107,5 @@ trait DriverRoute {
protected def errorResponse[T <: Exception](statusCode: StatusCode, entity: ResponseEntity, exception: T): Route = {
complete(HttpResponse(statusCode, entity = entity))
}
+
}