Aerospike C客戶端手冊———建立連接


C客戶端函數庫

建立連接

Aerospike對象描述一個集羣。連接到一個集羣,第一步需要配置一個aerospike對象。

配置客戶端

要配置客戶端,應提供一個初始化且填充了配置信息的as_config對象。

首先,使用as_config_init()以默認值初始化as_config:

as_config config;
as_config_init(&config);

初始化as_config完成後,使用特定於應用的設置來填充它。

最低限度,至少需要配置一個服務器地址給客戶端做seed。客戶端將嘗試連接各個seed主機,直到成功連接上。

config.hosts[0] = { .addr = "127.0.0.1", .port = 3000 };

初始化客戶端

要連接集羣,首先使用前面創建的as_config配置對象來初始化一個aerospike客戶端對象。

aerospike as;
aerospike_init(&as, &config);

aerospike_init()函數執行成功後,返回完成初始化完成的aerospike客戶端對象,否則返回空(NULL)。

建立連接

現在,使用初始化完成的aerospike客戶端對象,連接到集羣。 aerospike_connect()函數需要一個as_error對象來返回出錯信息:

as_error err;
if (aerospike_connect(&as, &err) != AEROSPIKE_OK) {
    fprintf(stderr, "err(%d) %s at [%s:%d]\n", err.code, err.message, err.file, err.line);
}

函數返回碼與err.code的值相一致。若返回碼不是AEROSPIKE_OK,則表明發生了錯誤,通過檢查err對象可獲得更多信息。

一個aerospike客戶端對象內部保存集羣狀態並維護與集羣間的連接池。同一個aerospike客戶端對象可被應用重用,完成給定集羣上的數據庫操作。

若應用需要連接到多個Aerospike集羣,應用必須創建多個aerospike客戶端對象,每個連接到不同集羣。

關閉連接

當不再需要客戶端連接到一個集羣時,使用aerospike_close()關閉連接:

as_error err;
if (aerospike_close(&as, &err) != AEROSPIKE_OK) {
    fprintf(stderr, "err(%d) %s at [%s:%d]\n", err.code, err.message, err.file, err.line);
}

清理

當客戶端不再需要時,通過aerospike_destroy()銷燬客戶端對象並且釋放其所佔資源:

aerospike_destroy(&as);

譯       者:歪脖大肚子Q
 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章