2016-12-03 34 views
0

У меня есть старое приложение, которое использует Spray, и я обновляю его до Akka HTTP. В конфигурации у меня есть spray.can.host-connector.pipelining = on. У Akka HTTP больше нет этого конфигурационного ключа. Вместо этого он имеет akka.http.host-connection-pool.pipelining-limit = 1 (по умолчанию). Я предполагаю, что pipelining-limit = 1 означает, что нет никакой конвейерной обработки. Если это так, то какое значение будет эквивалентно Sprays pipelining = on?Эквивалент spray.can.host-connector.pipelining в Akka HTTP

ответ

0

Настройка pipelining-limit позволяет выбрать «ширину» вашего HTTP-конвейеризации, то есть сколько запросов в полете может быть в любой момент времени.

Из документов для конвейерного-предела (http://doc.akka.io/docs/akka-http/current/scala/http/configuration.html)

# The maximum number of requests that are dispatched to the target host in 
# batch-mode across a single connection (HTTP pipelining). 
# A setting of 1 disables HTTP pipelining, since only one request per 
# connection can be "in flight" at any time. 
# Set to higher values to enable HTTP pipelining. 
# This value must be > 0. 

Пожалуйста, обратите внимание, что это присутствует в спрей, а также. На самом деле, установка spray.can.host-connector.pipelining = on не достаточно, чтобы включить конвейерную в спрей, вы также должны spray.can.server.pipelining-limit быть строго больше 1.

Похоже, что они делали в Akka-HTTP упрощает эту конфигурацию, удалив логическое значение. Консолидация может быть однозначно разрешена установкой предела выше 1.