twitter/finagle

How to set Host header with LoadBalancing

開放

#562 建立於 2016年10月18日

 (15 則留言) (0 個反應) (0 位負責人)Scala (1,435 個分叉)batch import
good first issue

倉庫指標

星標
 (8,864 顆星)
PR 合併指標
 (30 天內沒有已合併 PR)

描述

According to #560 you may be discussing but I got confused when using Finagle's load balancing feature. In order to distribute requests to multiple servers, we instantiate a service via Http.Client#newService as follows,

val client = Http.client.newService("hostA.org:80, hostB.org:80")

Then construct request,

val request = Request("/path/to/service")
request.host = ???

client(request)

What should we fill ??? with?

Moreover, we're forced to pass the host addresses twice when the service creation and the building request. It's not DRY.

Are there any reasons that the Host header automatically set that given to the Service?

貢獻者指南