Tokyo Tyrant(TTServer)系列(二)-启动參数和配置

启动參数介绍

ttserver命令能够启动一个数据库实例。由于数据库已经实现了Tokyo Cabinet的抽象API,所以能够在启动的时候指定数据库的配置类型。

支持的数据库类型有:

  1. 内存hash数据库
  2. 内存tree数据库
  3. hash数据库
  4. B+ tree数据库

命令通过以下的格式来使用,‘dbname’制定数据库名,假设省略。则被视作内存hash数据库。

ttserver [-host name] [-port num] [-thnum num] [-tout num] [-dmn] [-pid path] [-log path] [-ld|-le] [-ulog path] [-ulim num] [-uas] [-sidnum] [-mhost name] [-mport num] [-rts path] [-ext path] [-extpc name period] [-mask expr] [dbname]

以下来说这些參数的功能:

  • -host name :指明server的hostname或者ip地址。

    默认server的全部地址都会被绑定。比方:指定127.0.0.1这种ip。就仅仅是本地能够訪问了。

  • -port num : 指定服务启动的端口. 默认1978.假设要启动多个数据库实例。端口须要不一样。
  • -thnum num : 指定服务工作的线程数。默认8.
  • -tout num : 指定每一个会话的超时时间。

    默认永不超时。

  • -dmn : 以守护进程方式执行。
  • -pid path : 输出进程IP到指定的文件。
  • -log path : 输出日志信息到指定文件。
  • -ld : 日志中记录debug信息。
  • -le :日志中仅仅记录错误信息。

  • -ulog path : 指定存放更新日志(update log)的文件夹.能够用来备份恢复数据库。主从库之间的同步。
  • -ulim num : 指定每一个更新日志文件的限制大小.
  • -uas :使用异步IO记录更新日志。(使用此项能够降低写入日志的IO开销,可是在server意外关机。进程被kill时可能会丢失数据。

    依据经验,一般能够不使用)。

  • -sid num : 指定服务的ID号。

    主从复制的时候通过不同的ID号来识别。

  • -mhost name : 指定主从复制模式下的主server的IP或域名。
  • -mport num : 指定主从模式下主server的端口号.
  • -rts path : 指定用于主从复制的时间戳存放文件
  • -rcc 检查同步是否正常
  • -ext path : 指定扩展脚本语言文件。
  • -extpc name period : 指定被周期调用的函数名和间隔时间.
  • -mask expr : 指定被禁止的命令名(比方能够禁止使用清空vanish).
  • -unmask expr : 指定被同意的命令名.
  • 数据库类型

  • 以下我们再来看下数据库类型的具体配置。
  1. 数据库名的命名方式被Tokyo Cabinet的抽象API指定。
  2.     假设数据库名为"*"。表示内存hash数据库。
  3.     假设数据库名为"+"表示内存tree数据库。
  4.     假设数据库名为".tch",则数据库为hash数据库。

  5.     假设数据库名的后缀为".tcb",数据库将为B+ tree数据库。
  6.     假设数据库名的后缀为".tcf"。则数据库将为fixed-length数据库。

  7.     假设数据库名的后缀为".tct",则数据将为一个table数据库(有表的概念)。

数据库的调整參数通过数据库名的延伸来指定。通过"#"分开,每一个參数通过一个參数名和值来指定。用"="隔开。


1、内存hash数据库支持"bnum", "capnum", 和 "capsiz"

2、内存tree数据库支持"capnum" 和 "capsiz",capnum指定记录的最大容量,capsiz指定最大的内存使用量(在内存数据库中),记录通过存储的顺序移除。

3、hash数据库支持"mode", "bnum", "apow", "fpow", "opts", "rcnum", 和 "xmsiz".

`rcnum‘指定最大的缓存记录数。假设它不大于零。那么缓存记录不可用。

默认不可用。

xmsiz   指定外部内存的大小。假设不大于0,内存不可用。默认是67108864,即64M。

`bnum‘ 指定bucket存储桶的数量。

假设指定的数目不大于0。将会使用默认的数值131071.推荐数量应该在全部须要存储的记录总数的0.4-4倍
`apow‘ 跟一个key关联的记录数,2的N次方表示.  假设不指定,默认2^4=16.
`fpow‘ specifies the maximum number of elements of the free block pool by power of 2.  默认2^10=1024.
`opts‘ 指定选项。位或:`HDBTLARGE‘ 指定数据库的大小通过使用64位数组桶能够超过2G。
                       `HDBTDEFLATE‘  指定每一个记录被Deflate encoding压缩。
                      `HDBTBZIP‘ 指定每一个记录被BZIP2 encoding压缩

`HDBTTCBS‘指定每一个记录被 TCBS encoding压缩

4、B+ tree数据库支持"mode", "lmemb", "nmemb", "bnum", "apow", "fpow", "opts", "lcnum", "ncnum", 和 "xmsiz".

5、Fixed-length 数据库 支持 "mode", "width", and "limsiz".

6、Table 数据库支持 "mode", "bnum", "apow", "fpow", "opts", "rcnum", "lcnum", "ncnum", "xmsiz", 和 "idx"

"idx"指定表的索引。

"mode"能够包括 "w" 写, "r" 读, "c" 创建, "t" 截断,"e" 无锁,和"f" 非堵塞锁。

默认的的mod为"wc"。

比如例如以下启动參数:

./ttserver -port 9032 -pid ~/app/tokyotyrant-1.1.41/data/tt_account2/tt_9032.pid ~/app/tokyotyrant-1.1.41/data/tt_account2/tt_account2.tch

时间: 2024-12-29 23:25:46

Tokyo Tyrant(TTServer)系列(二)-启动參数和配置的相关文章

swoft| 源码解读系列二: 启动阶段, swoft 都干了些啥?

date: 2018-8-01 14:22:17title: swoft| 源码解读系列二: 启动阶段, swoft 都干了些啥?description: 阅读 sowft 框架源码, 了解 sowft 启动阶段的那些事儿 小伙伴刚接触 swoft 的时候会感觉 压力有点大, 更直观的说法是 难. 开发组是不赞成 难 这个说法的, swoft 的代码都是 php 实现的, 而 php 又是 世界上最好的语言, swoft 的代码阅读起来是很轻松的. 之后开发组会用 系列源码 解读文章, 深入解析

Spark 性能相关參数配置具体解释-任务调度篇

作者:刘旭晖 Raymond 转载请注明出处 Email:colorant at 163.com BLOG:http://blog.csdn.net/colorant/ 随着Spark的逐渐成熟完好, 越来越多的可配置參数被加入到Spark中来, 本文试图通过阐述这当中部分參数的工作原理和配置思路, 和大家一起探讨一下怎样依据实际场合对Spark进行配置优化. 因为篇幅较长.所以在这里分篇组织,假设要看最新完整的网页版内容.能够戳这里:http://spark-config.readthedoc

可变參数学习笔记

一.什么是可变參数 我们在C语言编程中有时会遇到一些參数个数可变的函数,比如printf()函数,其函数原型为: int printf( const char* format, ...); 它除了有一个參数format固定以外,后面跟的參数的个数和类型是可变的(用三个点"-"做參数占位符),实际调用时能够有下面的形式: printf("%d",i); printf("%s",s); printf("the number is %d ,s

传參数与传实体、返回实体与返表——三层架构登录实例

用三层做窗口登录实例,与曾经做的<机房收费系统>相比,除了引入分层的理念外,最大的改观就是数据的传递由传參升级成了传实体,而查询数据库的返回结果也有了返回实体与返表的选择 传參数与传实体 窗口登录实例的的UI层是接收用户操作的最外层,数据经它转交给BLL层,如今先看下我们用以往传參数的方式,来编写的登录buttonclick事件 通过參数传递乍看起来清晰易读,可是这种程序耦合度太高,会为以后的数据变动和维护埋下隐患.比如,须要传递的数据添加了一个ID,user=mgr.SelectUserLo

TestNG的參数化測试、共享线程池配置、參数默认值配置

在使用TestNG进行測试时,常常会使用到一些參数化配置,比方数据库.连接池.线程池数. 使用TestNG的參数@Parameter注解进行自己主动化读取 原创文章,版权全部.同意转载,标明出处:http://blog.csdn.net/wanghantong 使用多线程的方式执行測试代码配置: 在'<suite>'标签中配置data-provider-thread-count="20" Java代码: /** * * <p> * Title: TestngPa

从头认识Spring-3.4 简单的AOP日志实现-扩展添加检查订单功能,以便记录并检測输入的參数

这一章节我们再上一个章节的基础上加上一个检查订单功能 1.domain 蛋糕类: package com.raylee.my_new_spring.my_new_spring.ch03.topic_1_4; public class Cake { private String name = ""; public String getName() { return name; } public void setName(String name) { this.name = name; }

Tokyo Tyrant(TTServer)系列(二)-启动参数和配置

启动参数介绍 ttserver命令可以启动一个数据库实例.因为数据库已经实现了Tokyo Cabinet的抽象API,所以可以在启动的时候指定数据库的配置类型. 支持的数据库类型有: 内存hash数据库 内存tree数据库 hash数据库 B+ tree数据库, 命令通过下面的格式来使用,'dbname'制定数据库名,如果省略,则被视作内存hash数据库. ttserver [-host name] [-port num] [-thnum num] [-tout num] [-dmn] [-pi

Tokyo Tyrant(TTServer)系列(五)-ttserver的几种部署方式

ttserver的几种部署方式 ttserver可以理解成一种key-value形式的数据库,部署ttserver的方式,可以根据访问量和数据规模循选择不同的部署策略. 详细启动参数请参考:http://blog.csdn.net/xifeijian/article/details/37744131 1.单机:数据量不大,访问量不大ttserver -host 192.168.1.110 -port 1978 -thnum 128 -dmn -ulim 1024m -ulog /home/ope

Tokyo Tyrant(TTServer)系列(一)-介绍和安装

Tokyo Cabinet 是日本人Mikio Hirabayashi 开发的一款DBM 数据库,该数据库读写非常快,哈希模式写入100 万条数据只需0.643 秒,读取100 万条数据只需0.773 秒,是Berkeley DB 等DBM 的几倍.Tokyo Tyrant 是由同一作者开发的Tokyo Cabinet 数据库网络接口.它拥有Memcached兼容协议,也可以通过HTTP 协议进行数据交换. Tokyo Tyrant 加上Tokyo Cabinet,构成了一款支持高并发的分布式持