日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Tokyo Tyrant安装和配置

發布時間:2023/12/19 编程问答 58 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Tokyo Tyrant安装和配置 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Tokyo Tyrant安裝和配置



Tokyo Cabinet是日本人開發的一款DBM數據庫,讀寫速度非常快。Tokyo Tyrant也是由同一作者開發的Tokyo Cabinet網絡接口,兼容memcached協議,也可以通過http協議進行數據交換。

?

Tokyo Tyrant加上Tokyo Cabinet構成一款支持高并發的分布式持久存儲系統,對任何memcached客戶端來說,可以將Tokyo Tyrant當作是一個memcached服務,但是ttserever數據是持久存儲的。同時ttserver支持互為主輔模式,實現故障轉移。

?

安裝



1.安裝zlib.h和bzlib.h依賴

yum?install?-y?zlib-devel?bzip2-devel

如果不安裝,可能會碰到如下錯誤:

configure:?error:?bzlib.h?is?required

?

2.安裝Tokyo Cabinet

cd?/tmp wget?http://fallabs.com/tokyocabinet/tokyocabinet-1.4.48.tar.gz tar?zxvf?tokyocabinet-1.4.48.tar.gz cd?tokyocabinet-1.4.48 ./configure?--prefix=/usr/local/ttserver/tokyocabinet make make?install


注意:在32位操作系統下,作為?Tokyo?Tyrant?后端存儲的?Tokyo?Cabinet?數據庫單個文件不能超過2G,而64位操作系統則不受這一限制。

所以,如果使用?Tokyo?Tyrant,推薦在64CPU、操作系統上安裝運行。

在編譯Tokyo?cabinet的時候,使用如下編譯選項就可以突破2G限制:--enable-off64

?

3.安裝Tokyo Tyrant

cd?/tmp wget?http://fallabs.com/tokyotyrant/tokyotyrant-1.1.41.tar.gz tar?zxvf?tokyotyrant-1.1.41.tar.gz cd?tokyotyrant-1.1.41 ./configure?--prefix=/usr/local/ttserver/tokyotyrant?--with-tc=/usr/local/ttserver/tokyocabinet


如果不指定--with-tc,可能會報如下錯誤:

configure:?error:?tcutil.h?is?requiredmake make?install

?

4.查看參數

cd?/usr/local/ttserver/ ./tokyotyrant/bin/ttserver?-h./tokyotyrant/bin/ttserver:?the?server?of?Tokyo?Tyrant usage: ./tokyotyrant/bin/ttserver?[-host?name]?[-port?num]?[-thnum?num]?[-tout?num]?[-dmn]?[-pid?path]?[-kl]?[-log?path]?[-ld|-le]?[-ulog?path]?[-ulim?num]?[-uas]?[-sid?num]?[-mhost?name]?[-mport?num]?[-rts?path]?[-rcc]?[-skel?name]?[-mul?num]?[-ext?path]?[-extpc?name?period]?[-mask?expr]?[-unmask?expr]?[dbname]

ttserver參數注釋:

-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?:?指定用來存放同步時間戳的文件名。 -rcc?:?復制的一致性檢查。 -skel?name?:?指定skeleton數據庫的庫名稱。 -mul?num?:?指定多個數據庫機制的分區數目。 -ext?path?:?指定腳本語言的擴展文件路徑。 -extpc?name?period?:?指定函數的名稱和周期命令的調用周期。 -mask?expr?:?指定禁止執行的命令。 -unmask?expr?:?指定允許的命令的名稱。

?

配置



1.創建數據文件存放目

mkdir?-p?/ttserver/data?#數據文件 mkdir?-p?/ttserver/ulog?#同步日志 mkdir?-p?/ttserver/log?#日志文件

?

2.設置文件描述符大小

vim?/etc/security/limits.conf

* soft nofile 204800

* hard nofile 204800

ulimit?-u?204800?-HSn?204800

或寫入/etc/profile里面,這樣每次用戶登錄進來都會執行這個文件。

?

3.配置全局參數

vi?/etc/profile

在里面加入

export PATH="$PATH:/usr/local/ttserver/tokyotyrant/bin:/usr/local/ttserver/tokyotyrant/sbin"

.?/etc/profile echo?$PATH

?

4.啟動ttserver


數據庫類型由后綴決定,因為我只需要key-value的功能,所以采用功能簡單,速度快的hash database

Hash Database :.tch

B+ tree database :.tcb

fixed-length database :.tcf

table database :.tct

內存Hash Database :*

內存B+ tree database :+


1) 單機模式

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

?

2) 互為主輔

在192.168.11.51上執行:

ttserver?-host?192.168.11.51?-port?11211?-thnum?8?-dmn?-pid?/ttserver/ttserver.pid?-log?/ttserver/log/ttserver.log?-le?-ulog?/ttserver/ulog/?-ulim?128m?-sid?110?-mhost?192.168.11.52?-mport?11211?-rts?/ttserver/ttserver.rts?/ttserver/data/casket.tch

在192.168.11.52上執行:

ttserver?-host?192.168.11.52?-port?11211?-thnum?8?-dmn?-pid?/ttserver/ttserver.pid?-log?/ttserver/log/ttserver.log?-le?-ulog?/ttserver/ulog/?-ulim?128m?-sid?111?-mhost?192.168.11.51?-mport?11211?-rts?/ttserver/ttserver.rts?/ttserver/data/casket.tch

?

3) 腳本或服務方式

腳本或服務方式啟動,可以配置為單機,也可以配置為主輔。

編輯啟動腳本:/usr/local/ttserver/tokyotyrant/sbin/ttservctl,設置相關參數:

(以單機模式配置為示例)

#!?/bin/sh #----------------------------------------------------------------?#?Startup?script?for?the?server?of?Tokyo?Tyrant #---------------------------------------------------------------- #?configuration?variables prog="ttservctl" cmd="ttserver" basedir="/ttserver/"????#數據庫目錄 port="1978"?????#ttserver端口 pidfile="$basedir/pid"??#輸出進程ID到/ttserver/pid文件 logfile="$basedir/log/ttserver.log"??#輸出日志信息到/ttserver/log/ttserver.log文件 ulogdir="$basedir/ulog/"???#指定同步日志文件存放路徑 ulimsiz="256m"?????#對單個ulog文件限制,超過將新建一個文件 sid=110??#server?id同mysql,不能有重復的 #mhost="192.168.11.52"???#指定主輔同步模式下,主服務器的域名或IP地址。#mport="11211"???#指定主輔同步模式下,主服務器的端口號。 rtsfile="$basedir/rts"????#replication的時間記錄文件 dbname="$basedir/data/casket.tch#bnum=1000000"?#xmsiz=最大使用內存” maxcon="65535" retval=0


啟動ttserver服務器: ttservctl start

關閉ttserver服務器: ttservctl stop

重啟ttserver服務器: ttservctl restart

ttserver服務器日志輪轉: ttservctl hup

或者將腳本放到/etc/init.d/目錄,作為服務啟動。

?

5.驗證啟動成功

ps?aux?|?grep?ttserver telnet?192.168.11.51?1978Trying?192.168.11.51... Connected?to?192.168.11.51. Escape?character?is?'^]'. stats STAT?pid?20553 STAT?uptime?67 STAT?time?1430991715 STAT?version?1.1.41 STAT?pointer_size?64 STAT?rusage_user?0.011998 STAT?rusage_system?0.018997 STAT?cmd_set?0 STAT?cmd_set_hits?0 STAT?cmd_set_misses?0 STAT?cmd_delete?0 STAT?cmd_delete_hits?0 STAT?cmd_delete_misses?0 STAT?cmd_get?0 STAT?cmd_get_hits?0 STAT?cmd_get_misses?0 STAT?cmd_flush?0 STAT?curr_items?0 STAT?total_items?0 STAT?bytes?4198720 STAT?threads?8 END quit Connection?closed?by?foreign?host.


轉載于:https://blog.51cto.com/ultrasql/1643955

總結

以上是生活随笔為你收集整理的Tokyo Tyrant安装和配置的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。