本节介绍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'
-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
-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的版本信息