Bidder インスタンス サービス

入札者は、常に少なくとも 2 つのインスタンスを実行している可能性があります。 各インスタンスは、Xandr データセンターの 1 つのインプレッション バスに関連付けられます。 インスタンス自体は、データ センターの Xandr でホストすることも、近くに配置することもできます。 グローバル インプレッションの待機時間を短縮するために、さまざまな Xandr データセンターでビッダー インスタンスをセットアップできます (下記 datacenter_id 参照)。 各入札者インスタンスは、1 つのデータセンターに関連付けられます。 入札者の負荷が大きくなると、データセンターごとに複数のインスタンスが必要になる可能性があります。 これらの複数のインスタンスに対して独自のローカル負荷分散プールを設定する代わりに、インプレッション バスが負荷分散を処理できます。

Bidder Instance Service API を使用して、各入札者インスタンスのホスト名/IP/ポートの組み合わせをインプレッション バスに登録する必要があります。 この API サービスでは、インスタンスを表示、変更、削除することもできます。 各入札者インスタンスは、 入札者サービスによって定義される要求ハンドラーの命名法を使用する必要があります。

注:

ビッダー インスタンスの仕組みに関してよく寄せられる質問への回答は、「 ビッダー インスタンス - FAQ」を参照してください。

REST API

HTTP メソッド エンドポイント 説明
GET https://api.adnxs.com/bidder-instance/BIDDER_ID すべての入札者インスタンスを表示します。 他のユーザーの入札者は表示されません。
GET https://api.adnxs.com/bidder-instance/BIDDER_ID/BIDDER_INSTANCE_ID 特定の入札者インスタンスを表示します。
POST https://api.adnxs.com/bidder-instance/BIDDER_ID
(bidder instance JSON)
新しい入札者インスタンスを追加します。
PUT https://api.adnxs.com/bidder-instance/BIDDER_ID/BIDDER_INSTANCE_ID
(bidder instance JSON)
既存の入札者を変更します。

メモ: 現在、入札者インスタンス サービスは削除をサポートしていません。インスタンスを削除するには、そのインスタンスを非アクティブに設定します。

警告: 入札者インスタンスを作成または変更するときは、非推奨の "datacenter" パラメーターを使用してインスタンスのデータセンターを設定しないでください。 代わりに、常に以下で定義した ID を持つ "datacenter_id" パラメーターを使用してください。

JSON フィールド

フィールド 必須 説明
id はい ( PUT 日) int ビッダー インスタンスの ID。
bidder_id int 入札者の ID。
active いいえ、既定値は true です ブール値 入札者インスタンスがアクティブかどうか。
datacenter_id はい ( POST 日) int インスタンスが関連付けられているデータセンター ID NYM = 6、LAX = 4、、AMS = 15、FRA = 7、SIN = 13。 レガシー ID: AMS = 12 (2022 年 7 月 12 日まで)、SIN = 8 (2019 年 10 月 15 日まで)、ZKS = 17
ip_address 文字列 入札者インスタンスの IP アドレス。
port int 入札者インスタンスのポート。
last_activity いいえ timestamp このビッダー インスタンスへの最後の変更のタイムスタンプ。
hostname いいえ varchar(128) 入札者インスタンスのホスト名 ("https:// を含めないでください。例:"hostname":"rtb.yourdomain.com")
qps_limit いいえ int このビッダー インスタンスに送信された 1 秒あたりの最大クエリ数。

注:

QPS 制限は、データセンター内のすべてのビッダー インスタンスに対して同じように設定 する必要があります 。 これを行うには、データセンターでアクティブなすべての入札者インスタンスの qps_limit を同じ値に設定します。 たとえば、LAX に 3 つの入札者インスタンスがあり、データセンター全体の QPS 制限を 50,000 に設定する場合は、3 つの入札者インスタンスのそれぞれで qps_limit を 50,000 に設定します。 データセンター内のすべての入札者インスタンスで qps_limit が同じでない場合、意図しない結果が得られる可能性があります。 qps_limit 値が各データセンターで同じであることを確認してください。

ホスト名はいつでも入札者インスタンスに追加できます。 ただし、弊社の API では、入札者のインスタンスを調整するときに IP アドレスが必要ですが、API 呼び出しに値 (お客様の URL またはドメイン) を含むホスト名フィールドを含めると、システムはホスト名に接続し、IP アドレスは無視されます。 ホスト名を持つ新しい入札者インスタンスを転記する場合は、[ip_address] フィールドにプレースホルダー値を使用できます。

認証トークン

API サービスを使用する場合、認証は常に最初のステップです。 認証トークンは、将来使用するために cookie ファイルに書き込むことができます。 詳細な手順については、「 認証サービス」を参照してください。

既存のインスタンスを表示する

$ curl -b cookies -c cookies 'https://api.adnxs.com/bidder-instance/2'
{
   "response":{
      "status":"OK",
      "instances":[
         {
            "id":14,
            "bidder_id":2,
            "active":true,
                "datacenter_id": 6,
            "ip_address":"8.12.231.108",
            "port":8081,
            "last_activity":"2016-12-31 17:07:17"
            "hostname": null
         }
      ]
   }
}

新しいインスタンスの追加

ニューヨーク (NYM2) のインスタンスがあります。LAX1 ビッダー インスタンスを登録したい。 次の JSON を作成します。

$ cat bidder_instance
{
   "instance":{
      "bidder_id":2,
      "active":true,
      "datacenter_id":4,
      "ip_address":"8.12.231.108",
      "port":8081,
      "hostname":"rtb.yourdomain.com"
   }
}

次に、この新しいインスタンスを入札者に追加するには (2):

$ curl -b cookies -c cookies -X POST --data-binary @bidder_instance 'https://api.adnxs.com/bidder-instance/2'
{
   "response":{
      "status":"OK",
      "id":53
   }
}

新しく追加したインスタンスを表示するには:

$ curl -b cookies -c cookies 'https://api.adnxs.com/bidder-instance/2/53'
{
   "response":{
      "status":"OK",
      "instance":[
         {
            "id":53,
            "bidder_id":2,
            "active":true,
            "datacenter_id":4,
            "ip_address":"64.210.63.108",
            "port":8081,
            "last_activity":"2016-12-31 19:24:23"
            "hostname":"rtb.yourdomin.com"
         }
      ]
   }
}

既存のインスタンスに QPS 上限を追加する

既存のインスタンスに QPS 上限を追加する場合:

$ cat bidder-instance
{
   "instance":{
      "id":53,
      "qps_limit":75000
   }
}
$ curl -b cookies -c cookies -X PUT --data-binary @bidder-instance  "https://api.adnxs.com/bidder-instance/2/53"
{
   "response":{
      "status":"OK",
      "id":53
   }
}

次に、インスタンスを表示する場合は:

$ curl -b cookies -c cookies 'https://api.adnxs.com/bidder-instance/2'
{
   "response":{
   "status":"OK",
      "instances":[
         {
            "id":14,
            "bidder_id":2,
            "active":true,
            "datacenter_id":6,
            "ip_address":"8.12.231.108",
            "port":8081,
            "last_activity":"2016-12-31 17:07:17"
            "hostname":null
         },
         {
            "id":53,
            "bidder_id":2,
            "active":true,
            "datacenter_id":4,
            "ip_address":"64.210.63.124",
            "port":8081,
                        "qps_limit":75000
            "last_activity":"2016-12-31 19:51:13"
            "hostname":"rtb.yourdomain.com"         }
      ]
   }
}

インスタンスの変更

IP アドレスを変更する必要がある場合:

$ cat bidder-instance
{
   "instance":{
      "id":53,
      "ip_address":"64.210.63.124"
   }
}
$ curl -b cookies -c cookies -X PUT --data-binary @bidder-instance  "https://api.adnxs.com/bidder-instance/2/53"
{
   "response":{
      "status":"OK",
      "id":53
   }
}

次に、私の bidder(2) のすべてのインスタンスの現在の状態を表示するには:

$ curl -b cookies -c cookies 'https://api.adnxs.com/bidder-instance/2'
{
   "response":{
   "status":"OK",
      "instances":[
         {
            "id":14,
            "bidder_id":2,
            "active":true,
            "datacenter_id":6,
            "ip_address":"8.12.231.108",
            "port":8081,
            "last_activity":"2016-12-31 17:07:17"
            "hostname":null
         },
         {
            "id":53,
            "bidder_id":2,
            "active":true,
            "datacenter_id":4,
            "ip_address":"64.210.63.124",
            "port":8081,
            "last_activity":"2016-12-31 19:51:13"
            "hostname":"rtb.yourdomain.com"         }
      ]
   }
   }