`
haoningabc
  • 浏览: 1465769 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

TTServer(tokyotyrant)的helloworld

阅读更多
常用命令:
apt-get install tokyotyrant
apt-get install python-tokyotyrant
watch -n 1 "tcrmgr inform -port 11211 -st 10.1.224.171"
备份tcrmgr copy -port 11212 10.1.224.171 /data/backdata/yiyiback0607.tch
tcrmgr vanish -port 11211 10.1.224.171   清除
tcrmgr put -port 11211 10.1.224.171 hao aifangfang
tcrmgr list -port 11211 10.1.224.171
tcrmgr out -port 11211 10.1.224.171 hao
ps -ef|grep ttserver

ulimit -SHn 512000
tcrtest write -port 11212 -cnum 768 10.1.224.171 99999999
lsof -c tcrtest|wc -l

ttserver -host 10.1.224.171 -port 11212 -thnum 1024 -dmn -pid /data/ttserver_cache/ttserver.pid -log /data/ttserver_cache/ttserver.log -le -ulog /data/ttserver_cache/ulog/ -ulim 128m -sid 171_2 -rts /data/ttserver_cache/ttserver.rts /data/ttserver_cache/cache.tcb#lmemb=1024#nmemb=2048#bnum=20000000

指南参考http://code.google.com/p/xmemcached/wiki/User_Guide_zh

监控命令
tcrmgr inform -port 11211 -st 10.1.224.171 


装完后,重启ubuntu会自动启动线程。ps查看
/usr/sbin/ttserver -port 0 -dmn -pid /var/run/tokyotyrant/tokyotyrant.pid -log /var/log/tokyotyrant/tokyotyrant.log -host /var/run/tokyotyrant/tokyotyrant.sock /var/lib/tokyotyrant/data/tokyotyrant.tch#bnum=1000000


参考http://gqf2008.iteye.com/blog/366963
http://www.162cm.com/p/tokyotyrant.html
在ubuntu11.04下

apt-get install libbz2-dev 
apt-get install tokyotyrant

mkdir /ttservcer

ttserver -host 127.0.0.1 -port 11211 -thnum 8 -dmn -pid /ttserver/ttserver.pid -log /ttserver/ttserver.log -le -ulog /ttserver/ -ulim 128m -sid 1 -rts /ttserver/ttserver.rts /ttserver/database.tch


ps -ef|grep ttserver
kill -TERM 3683


启动之后:
curl -X PUT http://127.0.0.1:11211/hao -d "ningge"
添加值
curl http://127.0.0.1:11211/hao 访问值
curl -X DELETE http://127.0.0.1:11211/hao 删除值
或用:
tcrmgr put -port 20000 192.168.0.100 test1 value1  增加
tcrmgr get -port 20000 192.168.0.100 test1         获取
tcrmgr out -port 20000 192.168.0.100 test1         删除
tcrmgr list -port 20000 192.168.0.100              列出所有数据的key

参考http://blog.csdn.net/leonzhang2008/archive/2010/11/23/6029635.aspx

摘抄:
-host name : 指定需要绑定的服务器域名或IP地址。默认绑定这台服务器上的所有IP地址。
  -port num : 指定需要绑定的端口号。默认端口号为1978 
  -thnum num : 指定线程数。默认为8个线程。 
  -tout num : 指定每个会话的超时时间(单位为秒)。默认永不超时。 
  -dmn : 以守护进程方式运行。
  -pid path : 输出进程ID到指定文件(这里指定文件名)。
  -log path : 输出日志信息到指定文件(这里指定文件名)。
  -ld : 在日志文件中还记录DEBUG调试信息。
  -le : 在日志文件中仅记录错误信息。
  -ulog path : 指定同步日志文件存放路径(这里指定目录名)。
  -ulim num : 指定每个同步日志文件的大小(例如128m)。
  -uas : 使用异步IO记录更新日志(使用此项会减少磁盘IO消耗,但是数据会先放在内存中,不会立即写入磁盘,如果重启服务器或ttserver进程被kill掉,将导致部分数据丢失。一般情况下不建议使用)。
  -sid num : 指定服务器ID号(当使用主辅模式时,每台ttserver需要不同的ID号) 
  -mhost name : 指定主辅同步模式下,主服务器的域名或IP地址。
  -mport num : 指定主辅同步模式下,主服务器的端口号。
  -rts path : 指定用来存放同步时间戳的文件名。

------------------------java--------------------
http://code.google.com/p/tokyotyrant-java/downloads/list
这个没试验,下面这个好使,据说是memcache的协议
http://code.google.com/p/xmemcached/
XMemcachedClient client =new XMemcachedClient(AddrUtil.getAddresses("10.1.224.171:11211"));
		if (!client.set("hello", 0, "okok")){   //对应cnt_put
	       System.err.println("set error");   
		}  
		client.add("hello", 0, "okok1");  //对应cnt_putkeep
		client.replace("hello", 0, "okok2"); 
		String name=(String)client.get("hello");  
		System.out.println(name);
		
		List<String> keys=new ArrayList<String>();   
		keys.add("hello");   
		keys.add("hao"); 
		Map<String,Object> map=client.get(keys);   
		System.out.println(map.get("hao"));
		client.shutdown();

或者:
MemcachedClientBuilder builder = new XMemcachedClientBuilder(
				AddrUtil.getAddresses("10.1.224.171:11211"));
		MemcachedClient memcachedClient = builder.build();
		try {
			memcachedClient.set("hello", 0, "Hello,xmemcached");
			String value = memcachedClient.get("hello");
			System.out.println("hello=" + value);
			memcachedClient.delete("hello");
			value = memcachedClient.get("hello");
			System.out.println("hello=" + value);
		} catch (MemcachedException e) {
			System.err.println("MemcachedClient operation fail");
			e.printStackTrace();
		} catch (TimeoutException e) {
			System.err.println("MemcachedClient operation timeout");
			e.printStackTrace();
		} catch (InterruptedException e) {
			// ignore
		}
		try {
			// close memcached client
			memcachedClient.shutdown();
		} catch (IOException e) {
			System.err.println("Shutdown MemcachedClient fail");
			e.printStackTrace();
		}



-------------------------------------------
Tokyo Cabinet 单个数据库文件记录数超过1亿,性能会急剧下降。Tokyo Tyrant 的新版本支持了数据库文件拆分,例如 ttserver -mul 256 database.tcb 启动TT时,将会自动拆分成256个文件,存取时,根据key哈希到不同的文件。


-----------------------------详解---------------------
[@ubuntu_106_182 ~]# tcrmgr inform -port 11212 -st 192.168.106.182
version 1.1.40
libver  323
protver 0.91
os      Linux
time    1306904089.978848
pid     14085
sid     182
type    B+ tree
path    /data/ttserver_cache/cache.tcb
rnum    8312540                           当前键值的数量
size    19317456896
bigend  0
fd      313
loadavg 1.530000
memsize 5984587776
memrss  256909312
ru_user 132652.434764
ru_sys  73513.136304
ru_real 3717761.706554
cnt_put 196309068                       put操作的次数,put同一个key也算
cnt_putkeep     0
cnt_putcat      0
cnt_putshl      0
cnt_putnr       0
cnt_out 2030428                         out操作的次数
cnt_get 4483735690                      读取key的次数
cnt_mget        0
cnt_vsiz        0
cnt_iterinit    1
cnt_iternext    3544
cnt_fwmkeys     0
cnt_addint      0
cnt_adddouble   0
cnt_ext 0
cnt_sync        0
cnt_optimize    0
cnt_vanish      0
cnt_copy        0
cnt_restore     0
cnt_setmst      0
cnt_rnum        0
cnt_size        0
cnt_stat        207543170
cnt_misc        0
cnt_repl        0
cnt_put_miss    0
cnt_out_miss    2012252
cnt_get_miss    159781902             读取,但是key不存在的次数





分享到:
评论

相关推荐

    ttserver

    在 "tokyotyrant-1.1.24" 这个压缩包中,我们预期会找到 Tokyo Tyrant 的源代码、文档、示例程序和测试用例。Tokyo Tyrant 提供了丰富的API,使得开发人员可以轻松地在各种编程语言(如C、Python、Ruby等)中与之...

    tokyotyrant-1.1.40.tar.gz

    安装完成后,启动TokyoTyrant服务器,通常通过`ttserver`命令。 4. **使用TokyoTyrant**:TokyoTyrant提供了多种语言的客户端库,包括Python、Ruby、PHP等,可以方便地在这些编程语言中与TokyoTyrant服务器通信。...

    ttserver-lib包

    tokyocabinet-1.4.45.tar.gz tokyotyrant-1.1.41.tar.gz tokyotyrant-0.11.jar ch-tokyocabinet-java-1.24.0.jar

    memcached和TTserver的使用

    【标题】: "深入理解memcached与TTServer的使用" 【描述】: "TTServer作为一款成熟的NoSQL存储系统,已经在各种应用场景中广泛使用。它以其出色的性能、复制功能、小巧的代码库以及对key-value数据存储的良好支持,...

    TTSERVER V2.1.1

    "TTServer V2.1.1"是一款专为用户提供便捷远程访问服务的软件。这款工具以其高效、稳定和易用性赢得了用户的喜爱,使得无论身处何地,都能轻松实现对远程计算机的控制和管理,真正打破了地理位置的限制,实现了...

    TTserver1.1.4

    从给出的信息来看,它可能是Tokyo Tyrant的一个特定版本,因为压缩包中的文件名为"tokyotyrant-1.1.41"。Tokyo Tyrant是一个轻量级、高性能的键值存储系统,常用于数据缓存和快速查找应用。 Tokyo Tyrant主要知识点...

    ttserver.exe

    主要用于远程协助使用,比QQ远程协助速度更快,更好用一些。 被协助者请运行“ttserver.exe”运行软件之后,随便输入一个验证码,然后点击‘被协助’,并将验证码告知协助方,协助方运行“ttclient.exe”

    ttserver被协助端.rar

    《ttserver被协助端详解与应用》 在IT行业中,"ttserver被协助端"是一个常见的话题,尤其对于网络服务开发者和系统管理员来说,它扮演着至关重要的角色。"ttserver"通常指的是一个用于提供特定服务或功能的服务器...

    TTServer-Docs:蘑菇街TeamTalk TTServer文档

    【TTServer-Docs:蘑菇街TeamTalk TTServer文档】 蘑菇街TeamTalk的TTServer是一款专为团队协作设计的服务器端软件,它提供了丰富的通信和协作功能,助力企业或团队高效沟通与工作。TTServer-Docs是该软件的官方文档...

    远程协助软件-TTVNC

    主要用于远程协助使用,比QQ远程协助速度更快,更好用一些。...若被协助方的‘被协助’按钮为灰色,请去掉后面‘自动连接’的勾,然后退出软件重新运行 ttserver.exe 输入验证码并点击被协助即可。

    最小的远程控制软件ttvnc2.2

    首先,我们要了解ttvnc2.2的两个核心组件:ttserver.exe和ttclient.exe。ttserver.exe是被控端程序,安装在需要被远程控制的计算机上。它的主要职责是监听网络连接,等待控制端的请求,并在接收到请求后提供远程桌面...

    关于使用key/value数据库redis和TTSERVER的心得体会

    关于使用Key/Value数据库Redis和TTSERVER的心得体会,主要集中在Redis的特性和使用场景上。Redis是一个高性能的Key/Value存储系统,它与Memcached相似,但提供了更为丰富的数据结构和更强大的功能。 首先,Redis...

    TTServer:蘑菇街一款既是做开源又是做产品的企业办公即时通信软件

    ###项目背景 随着蘑菇街由导购向电商转型,蘑菇街自己的IM也应运而生,IM起初只是用于商家和 买家之间沟通的工具。后面我们问自己,既然已经有了用于客服的IM,为什么不自己 做一个IM,用于公司内部的沟通工具,来...

    https-github.com-mogutt-TTServer

    TeamTalk是一套开源的企业办公即时通讯软件,作为整套系统的组成部分之一,TTServer为TeamTalk 客户端提供用户登录,消息转发及存储等基础服务。 TTServer主要包含了以下几种服务器: LoginServer (C++): 登录服务器...

    远程工具ttvnc

    【远程工具ttvnc】是一款轻量级的远程协助软件,以其小巧的体积(几百KB)和高效实用的功能,深受用户喜爱。这款软件的核心特点在于它的便捷性和易用性,使得用户无需复杂的设置,只需输入相同的验证码,即可实现...

    远程控制软件被控端下载

    远程控制软件被控端下载相关的知识点主要涉及到网络通信、系统管理、信息安全以及软件应用等多个方面。下面将详细解析这些知识点: 1. **网络通信技术**:远程控制软件的基础是网络通信,它通常采用TCP/IP协议栈,...

    远程控制软件 ttvnc软件

    远程控制软件在IT行业中扮演着重要的角色,尤其对于技术支持、协同工作和远程办公场景来说更是不可或缺。"ttvnc软件"就是这样一款强大的远程控制工具,它允许用户通过网络连接到另一台计算机,进行屏幕共享、键盘...

Global site tag (gtag.js) - Google Analytics