Tokyo Tyrant基本規范,翻譯自Tokyo Tyrant官網。
本節介紹Tokyo Tyrant的客戶端程序。
四. 客戶端程序
1) tcrtest
'tcrtest'命令是用于敏捷測試和性能測試的工具。這個命令的使用格式如下。'host'指定服務器的主機名, 'rnum'指定重復測試的數目。
1. tcrtest write [-port num] [-cnum num] [-tout num] [-nr] [-rnd] host rnum
使用8字節作為key存儲記錄。key依次更改為'00000001', '00000002'...
2. tcrtest read [-port num] [-cnum num] [-tout num] [-mul num] [-rnd] host
獲取數據庫中的所有記錄
3. tcrtest remove [-port num] [-cnum num] [-tout num] [-rnd] host
刪除數據庫中的所有記錄
4. tcrtest rcat [-port num] [-cnum num] [-tout num] [-shl num] [-dai|-dad] [-ext name] [-xlr|-xlg] host rnum
使用連鎖模式(concatenate mode)用中途重復的key來存儲記錄
5. tcrtest misc [-port num] [-cnum num] [-tout num] host rnum
執行不同操作的混合測試。
6. tcrtest wicked [-port num] [-cnum num] [-tout num] host rnum
隨機選取list和map來執行更新操作
7. tcrtest table [-port num] [-cnum num] [-tout num] [-exp num] host rnum
執行table extension的混合測試
選項如下:
選項 意義
-port num 指定端口號
-cnum num 指定連接數
-tout num 指定每個會話的超時時間,單位秒
-nr 使用函數'tcrdbputnr'代替'tcrdbput'
-rnd 隨機選取key
-mul num 為mget命令指定記錄數
-shl num 使用'tcrdbputshl'并指定寬度
-dai 使用'tcrdbaddint'代替'tcrdbputcat'
-dad 使用'tcrdbadddouble'代替'tcrdbputcat'
-ext name 調用腳本語言擴展函數
-xlr 執行記錄鎖定
-xlg 執行全局鎖定
-exp num 指定過期測試的生存時間
如果端口號不大于0,將使用UNIX domain socket同時socket文件的路徑將由主機參數指定。這個命令成功時返回0,失敗返回其他。
2) tcrmttest
'tcrmttest'是多線程環境下的敏捷測試工具。這個命令的使用格式如下。'host'指定服務器的主機名, 'rnum'指定重復測試的數目。
1. tcrmttest write [-port num] [-tnum num] [-nr] [-rnd] [-ext name] host rnum
使用8字節作為key存儲記錄。key依次更改為'00000001', '00000002'...
2. tcrmttest read [-port num] [-tnum num] [-mul num] host
獲取數據庫中的所有記錄
3. tcrmttest remove [-port num] [-tnum num] host
刪除數據庫中的所有記錄
選項如下:
選項 意義
-port num 指定端口號
-tnum num 指定運行的線程數
-nr 使用函數'tcrdbputnr'代替'tcrdbput'
-rnd 隨機選取key
-ext name 調用腳本語言擴展函數
-mul num 為mget命令指定記錄數
如果端口號不大于0,將使用UNIX domain socket同時socket文件的路徑將由主機參數指定。這個命令成功時返回0,失敗返回其他。
3) tcrmgr
'tcrmgr'是用于遠程數據庫API和應用程序的測試和調試工具。'host'指定服務器主機名,'key'指定記錄的key。'value'指定記錄的值。'params'指定調試參數。'dpath'指定目標文件。'func'指定函數名。'arg'指定函數的參
數。'file'指定輸入文件。'upath'指定更新日志目錄。'mhost'指定復制時master的主機名。'url'指定目標URL。
1. tcrmgr inform [-port num] [-st] host
打印各種信息到標準輸出
2. tcrmgr put [-port num] [-sx] [-sep chr] [-dk|-dc|-dai|-dad] host key value
存儲記錄
3. tcrmgr out [-port num] [-sx] [-sep chr] host key
刪除記錄
4. tcrmgr get [-port num] [-sx] [-sep chr] [-px] [-pz] host key
打印記錄的值
5. tcrmgr mget [-port num] [-sx] [-sep chr] [-px] host [key...]
打印多條記錄的key和value
6. tcrmgr list [-port num] [-sep chr] [-m num] [-pv] [-px] [-fm str] host
打印所有記錄的key,每行一條
7. tcrmgr ext [-port num] [-xlr|-xlg] [-sx] [-sep chr] [-px] host func [key [value]]
調用腳本語言擴展函數
8. tcrmgr sync [-port num] host
使用數據庫文件同步更新內容
9. tcrmgr optimize [-port num] host [params]
優化數據庫文件
10. tcrmgr vanish [-port num] host
刪除所有記錄
11. tcrmgr copy [-port num] host dpath
復制數據庫文件
12. tcrmgr misc [-port num] [-mnu] [-sx] [-sep chr] [-px] host func [arg...]
為多種操作調用通用函數
13. tcrmgr importtsv [-port num] [-nr] [-sc] host [file]
從TSV文件的每行中讀取并存儲記錄
14. tcrmgr restore [-port num] [-ts num] [-rcc] host upath
用更新日志恢復數據庫
15. tcrmgr setmst [-port num] [-mport num] [-ts num] [-rcc] host [mhost]
設置復制的master。
16. tcrmgr repl [-port num] [-ts num] [-sid num] [-ph] host
復制更新日志
17. tcrmgr http [-ah name value] [-ih] url
使用HTTP獲取URL的資源
18. tcrmgr version
打印Tokyo Tyrant的版本信息