CalculateDBInstanceWeight操作を呼び出して、プライマリインスタンスとその読み取り専用インスタンスのシステムに割り当てられた読み取り重みを照会できます。

読み書き分離機能が有効になっている場合、この操作はシステムに割り当てられた読み取り重みの計算に使用されます。 カスタム読み取り重みの詳細については、「DescribeDBInstanceNetInfo」をご参照ください。

この API を呼び出す場合、インスタンスは次の要件を満たしている必要があります。

  • ApsaraDB RDS for MySQLインスタンスで共有プロキシ機能が有効になっています。
  • インスタンスは、次のいずれかのデータベースエンジンバージョンとRDSエディションを実行する必要があります。
    • RDS High-availability EditionのMySQL 5.7 (ローカルSSDを使用)
    • MySQL 5.6
    • SQL Server on RDSクラスターエディション

デバッグ

OpenAPI Explorer は署名値を自動的に計算します。 この操作は、OpenAPI Explorer で呼び出すことを推奨します。 OpenAPI Explorer は、さまざまな SDK に対して操作のサンプルコードを動的に生成します。

リクエストパラメーター

項目 データ型 必須/任意 例: 説明 
操作 String 必須 CalculateDBInstanceWeight

実行する操作です。 値をCalculateDBInstanceWeightに設定します。

DBInstanceId String 必須 rm-uf6wjk5xxxxxxx

プライマリインスタンスのID。

レスポンスパラメーター

項目 データ型 例: 説明 
RequestId String C816A4BF-A6EC-4722-95F9-2055859CCFD2

リクエストの ID です。

項目 DBInstanceWeightの配列

システムが割り当てた読み取り重みで構成される配列。

DBInstanceWeight
ReadonlyInstanceSQLDelayedTime String 30

プライマリインスタンスから読み取り専用インスタンスへのデータレプリケーションのレイテンシのしきい値。 読み取り専用インスタンスは、ReadonlyInstanceSQLDelayedTimeパラメーターで指定された時間が経過すると、プライマリインスタンスからのデータの同期を開始します。 単位:秒。

重量 String 100

ApsaraDB RDSがインスタンスに対してリアルタイムで計算する読み取り重み。

DBInstanceType String マスター

インスタンスのロール。 有効な値:

  • マスター: プライマリインスタンス
  • Readonly: 読み取り専用インスタンス
DBInstanceId String rm-uf6wjk5xxxxxxx

インスタンスのID。

リクエストの例

http(s):// rds.aliyuncs.com/?Action=CalculateDBInstanceWeight
&DBInstanceId=rm-uf6wjk5xxxxxxx
&<共通リクエストパラメーター>

通常のレスポンス例

XML 形式

HTTP/1.1 200 OK
Content-Type:application/xml

<CalculateDBInstanceWeightResponse>
    <RequestId>4139E1C3-0480-5A50-B327-23E6B1028906</RequestId>
    <Items>
        <DBInstanceWeight>
            <ロール> マスター </ロール>
            <DBInstanceId>******</DBInstanceId>
            <DBInstanceType> 読み取り専用 </DBInstanceType>
            <重量> 400</重量>
        </DBInstanceWeight>
        <DBInstanceWeight>
            <ロール> マスター </ロール>
            <DBInstanceId>******</DBInstanceId>
            <DBInstanceType> マスター </DBInstanceType>
            <Weight>0</Weight>
        </DBInstanceWeight>
        <DBInstanceWeight>
            <ロール> スレーブ </ロール>
            <DBInstanceId>******</DBInstanceId>
            <DBInstanceType> マスター </DBInstanceType>
            <重量> 1600</重量>
        </DBInstanceWeight>
    </アイテム>
</CalculateDBInstanceWeightResponse>

JSON 形式

HTTP/1.1 200 OK
Content-Type:application/json

{
  "RequestId" : "4139E1C3-0480-5A50-B327-23E6B1028906" 、
  "アイテム" : {
    "DBInstanceWeight" : [ {
      "役割" : "マスター" 、
      "DBInstanceId" : "******" 、
      "DBInstanceType" : "Readonly" 、
      "重量" : "400"
    }, {
      "役割" : "マスター" 、
      "DBInstanceId" : "******" 、
      "DBInstanceType" : "マスター" 、
      "重量" : "0"
    }, {
      "役割" : "スレーブ" 、
      "DBInstanceId" : "******" 、
      "DBInstanceType" : "マスター" 、
      "重量" : "1600"
    } ]
  }
}

エラーコード

エラーコードリストについては、「API エラーセンター」をご参照ください。