全部產品
Search
文件中心

Tablestore:初始化OTSClient

更新時間:Aug 29, 2024

OTSClient是Table Store服務的用戶端,它為調用者提供了一系列的方法,可以用來動作表、讀寫單行資料、讀寫多行資料等。使用PHP SDK發起請求,您需要初始化一個OTSClient執行個體,並根據需要修改OTSClientConfig的預設配置項。

注意事項

如果要使用HTTPs協議訪問Tablestore資源,請安裝OpenSSL PHP擴充。

準備工作

初始化OTSClient前,您需要完成擷取執行個體Endpoint、安裝TablestorePHP SDK和配置訪問憑證的準備工作。

擷取執行個體Endpoint

建立執行個體後,您需要擷取執行個體網域名稱地址(Endpoint)用於後續通過Endpoint訪問執行個體。

Endpoint是阿里雲Tablestore服務各個執行個體的網域名稱地址,例如https://sun.cn-hangzhou.ots.aliyuncs.com,表示使用HTTPS協議通過公網網路訪問華東1(杭州)地區的sun執行個體。更多資訊,請參見服務地址

  1. 如果未開通Tablestore服務,請進行開通。具體操作,請參見開通Table Store服務

  2. 建立執行個體。具體操作,請參見建立執行個體

  3. 建立執行個體後擷取執行個體的Endpoint。

    1. 登入Table Store控制台

    2. 概覽頁面,單擊執行個體名稱。

    3. 執行個體詳情頁簽的執行個體訪問地址地區即可查看該執行個體的服務地址(Endpoint)。

      image

安裝TablestorePHP SDK

具體操作,請參見安裝Table StorePHP SDK

配置訪問憑證

要接入阿里雲的Tablestore服務,您需要擁有一個有效存取金鑰進行簽名認證。具體操作,請參見配置訪問憑證

初始化OTSClient

使用Tablestore的SDK時,您必須首先構造一個OTSClient,通過調用該OTSClient的介面來訪問Tablestore服務。

樣本

使用AK初始化

說明

運行本程式碼範例之前,請確保已設定環境變數OTS_AK_ENVOTS_SK_ENV。更多資訊,請參見配置訪問憑證

$accessKeyId = getenv('OTS_AK_ENV');
$accessKeySecret = getenv('OTS_SK_ENV');
$otsClient = new Aliyun\OTS\OTSClient(array(
    'EndPoint' => "<yourEndpoint>",
    'AccessKeyID' => $accessKeyId,
    'AccessKeySecret' => $accessKeySecret,
    'InstanceName' => "<yourInstance>"
));

配置參數說明請參見下表。

參數

樣本

說明

EndPoint

https://myinstance.cn-hangzhou.ots.aliyuncs.com

執行個體的訪問地址。具體操作,請參見擷取執行個體Endpoint

AccessKeyID

getenv('OTS_AK_ENV')

通過環境變數擷取AccessKey,請確保已配置相應環境變數。

AccessKeySecret

getenv('OTS_SK_ENV')

InstanceName

myinstance

執行個體名稱。更多資訊,請參見執行個體

ConnectionTimeout

2.0

與OTS建立串連的最大延時。預設值為2.0秒。

SocketTimeout

2.0

每次請求響應的最大延時。預設值為2.0秒。

當傳輸量比較大時,建議將此參數值設定的大些。

RetryPolicy

DefaultRetryPolicy

重試策略。預設配置為DefaultRetryPolicy。

如果要關閉重試策略,將此參數設定為null即可。

DebugLogHandler

defaultOTSDebugLogHandler

Debug層級Tlog函數,用來列印正常的請求和響應資訊。預設配置為defaultOTSDebugLogHandler。

如果要關閉Debug層級的日誌列印,設定此參數為null即可。

ErrorLogHandler

defaultOTSErrorLogHandler

Error層級Tlog函數,用來列印Table Store服務端返回錯誤時的日誌。預設配置為defaultOTSErrorLogHandler。

如果要關閉Error層級的日誌列印,設定此參數為null即可。

使用STS初始化

說明

運行本程式碼範例之前,請確保已設定環境變數OTS_AK_ENVOTS_SK_ENVOTS_SESSION_TOKEN。更多資訊,請參見配置訪問憑證

$accessKeyId = getenv('OTS_AK_ENV');
$accessKeySecret = getenv('OTS_SK_ENV');
$securityToken = getenv('OTS_SESSION_TOKEN');
$otsClient = new Aliyun\OTS\OTSClient(array(
    'EndPoint' => "<yourEndpoint>",
    'AccessKeyID' => $accessKeyId,
    'AccessKeySecret' => $accessKeySecret,
    'InstanceName' => "<yourInstance>",
    'StsToken' => $securityToken
));

配置參數說明請參見下表。

參數

樣本

說明

EndPoint

https://myinstance.cn-hangzhou.ots.aliyuncs.com

執行個體的訪問地址。具體操作,請參見擷取執行個體Endpoint

AccessKeyID

getenv('OTS_AK_ENV')

通過環境變數擷取AccessKey和STS Token,請確保已配置相應環境變數。

AccessKeySecret

getenv('OTS_SK_ENV')

StsToken

getenv('OTS_SESSION_TOKEN')

InstanceName

myinstance

執行個體名稱。更多資訊,請參見執行個體

ConnectionTimeout

2.0

與OTS建立串連的最大延時。預設值為2.0秒。

SocketTimeout

2.0

每次請求響應最大延時。預設值為2.0秒。

當傳輸量比較大時,建議將此參數值設定的大些。

RetryPolicy

DefaultRetryPolicy

重試策略。預設配置為DefaultRetryPolicy。

如果要關閉重試策略,將此參數設定為null即可。

DebugLogHandler

defaultOTSDebugLogHandler

Debug層級Tlog函數,用來列印正常的請求和響應資訊。預設配置為defaultOTSDebugLogHandler。

如果要關閉Debug層級的日誌列印,設定此參數為null即可。

ErrorLogHandler

defaultOTSErrorLogHandler

Error層級Tlog函數,用來列印Table Store服務端返回錯誤時的日誌。預設配置為defaultOTSErrorLogHandler。

如果要關閉Error層級的日誌列印,設定此參數為null即可。

常見問題

使用Table StoreSDK時出現Signature mismatch異常