twitter/finagle

How to set Host header with LoadBalancing

オープン

#562 opened on 2016/10/18

 (15 件のコメント) (0 件のリアクション) (0 人の担当者)Scala (1,435 件のフォーク)batch import
good first issue

Repository metrics

Stars
 (8,864 個のスター)
PR merge metrics
 (30d に merged 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?

コントリビューターガイド