¿Cómo manejar el tiempo de espera de respuesta?

En el enrutamiento akka-http puedo volverFuture como una respuesta que se convierte implícitamente enToResponseMarshaller.

¿Hay alguna manera de manejar el tiempo de espera de este futuro? O tiempo de espera de conexión en el nivel de ruta? O una forma es usarAwait() ¿función?

En este momento, el cliente puede esperar la respuesta para siempre.

complete {
   val future = for {
     response <- someIOFunc()
     entity <- someOtherFunc()
   } yield entity
   future.onComplete({
     case Success(result) =>
       HttpResponse(entity = HttpEntity(MediaTypes.`text/xml`, result))
     case Failure(result) =>
       HttpResponse(entity = utils.getFault("fault"))
   })
   future
 }

Respuestas a la pregunta(1)

Su respuesta a la pregunta