人妖在线一区,国产日韩欧美一区二区综合在线,国产啪精品视频网站免费,欧美内射深插日本少妇

新聞動(dòng)態(tài)

分布式隊(duì)列服務(wù)MemcacheQ在Linux系統(tǒng)下的編譯安裝

發(fā)布日期:2022-02-19 16:57 | 文章來源:腳本之家

MemcacheQ作為簡單的分布式隊(duì)列服務(wù),因?yàn)閷?duì)MemcacheQ不了解,不少人在MemcacheQ的安裝上遇到了不少麻煩,小編就為大家詳細(xì)介紹下MemcacheQ在Linux系統(tǒng)下的編譯安裝,以便大家有更詳細(xì)的了解。

隊(duì)列(Queue)是一種常用的數(shù)據(jù)結(jié)構(gòu)。在隊(duì)列這種數(shù)據(jù)結(jié)構(gòu)中,最先插入的元素將會(huì)最先被取出;反之最后插入的元素將會(huì)最后被取出,因此隊(duì)列又稱為“先進(jìn)先出”(FIFO:First In First Out)的線性表。

加入元素的一端叫“隊(duì)尾”,取出元素的一端叫“隊(duì)頭”。利用消息隊(duì)列可以很好地異步處理數(shù)據(jù)的傳送和存儲(chǔ),當(dāng)遇到頻繁且密集地向后端數(shù)據(jù)庫中插入數(shù)據(jù)時(shí),就可采用消息隊(duì)列來異步處理這些數(shù)據(jù)寫入。

MemcacheQ是一款基于Memcache協(xié)議的開源消息隊(duì)列服務(wù)軟件,由于其遵循了Memcache協(xié)議,因此開發(fā)成本很低,不需要學(xué)習(xí)額外的知識(shí)便可輕松掌握。

在最近的一個(gè)項(xiàng)目中也應(yīng)用了MemcacheQ,下面我將分享一下MemcacheQ在Linux中的編譯和安裝過程。

首先,MemcacheQ依賴于BerkeleyDB和Libevent,如果服務(wù)器中曾經(jīng)安裝過Memcached,那么Libevent應(yīng)該已經(jīng)存在了,否則就需要先下載安裝Libevent。

  下載鏈接如下:

Libevent:https://github.com/downloads/libevent/libevent/libevent-2.0.21-stable.tar.gz

Berkeley DB:http://download.oracle.com/otn/berkeley-db/db-6.0.30.tar.gz

MemcacheQ:https://github.com/stvchu/memcacheq

  安裝Libevent

tar zvxf libevent-2.0.21-stable.tar.gz

cd libevent-2.0.21-stable

。/configure --prefix=/usr/local/libevent

make && make install

echo “/usr/local/libevent/lib” 》》 /etc/ld.so.conf

ldconfig

  安裝BerkeleyDB

BerkeleyDB簡介:BerkeleyDB是一個(gè)開源的文件數(shù)據(jù)庫,介于關(guān)系數(shù)據(jù)庫與內(nèi)存數(shù)據(jù)庫之間,使用方式與內(nèi)存數(shù)據(jù)庫類似,它提供的是一系列直接訪問數(shù)據(jù)庫的函數(shù),而不是像關(guān)系數(shù)據(jù)庫那樣需要網(wǎng)絡(luò)通訊、SQL解析等步驟。

MemcacheQ依賴BerkleyDB用于隊(duì)列數(shù)據(jù)的持久化存儲(chǔ),以免在MemcacheQ意外崩潰或中斷時(shí),隊(duì)列數(shù)據(jù)不會(huì)丟失。

tar zxvf db-6.0.30.tar.gz

cd db-6.0.30/build_unix

。。/dist/configure --prefix=/usr/local/berkeleydb

make && make install

ln -s /usr/local/berkeleydb/lib/libdb-6.0.so /usr/lib/

echo “/usr/local/berkeleydb/lib/” 》》 /etc/ld.so.conf

ldconfig

  安裝MemcacheQ

tar zxvf memcacheq-0.2.0.tar.gz

cd memcacheq-0.2.0

。/configure --prefix=/usr/local/memcacheq --with-bdb=/usr/local/berkeleydb --with-libevent=/usr/local/libevent --enable-threads

make && make install

  啟動(dòng)MemcacheQ

Shell

/usr/local/memcacheq/bin/memcacheq -d -uroot -r -l 127.0.0.1 -p11210 -H /usr/local/mcq -N -R -v -L 1024 -B 1024 》 /usr/local/mcq/logs/mcq_error.log 2》&1

附:MemcacheQ參數(shù)

-p 《num》 TCP監(jiān)聽端口(default: 22201)

-U 《num》 UDP監(jiān)聽端口(default: 0, off)

-s 《file》 unix socket路徑(不支持網(wǎng)絡(luò))

-a 《mask》 unix socket訪問掩碼(default 0700)

-l 《ip_addr》 監(jiān)聽網(wǎng)卡

-d 守護(hù)進(jìn)程

-r 最大化核心文件限制

-u 《username》 以用戶身份運(yùn)行(only when run as root)

-c 《num》 最大并發(fā)連接數(shù)(default is 1024)

-v 詳細(xì)輸出 (print errors/warnings while in event loop)

-vv 更詳細(xì)的輸出 (also print client commands/reponses)

-i 打印許可證信息

-P 《file》 PID文件

-t 《num》 線程數(shù)(default 4)

  用PHP測(cè)試一下

PHP

《?php

$mcq = new Memcache;

$mcq-》connect(‘127.0.0.1’, 11210) or die (‘Connect Error!’);

for ($i=1; $i《=5; $i++) {

memcache_set($mcq, ‘k’, $i, 0, 0);

}

for ($i=1; $i《=6; $i++) {

$queue = memcache_get($mcq, ‘k’);

if ($queue === false) {

echo “null\n”;

} else {

echo $queue.“\n”;

}

}

memcache_close($mcq);

?》

上面就是Linux編譯安裝MemcacheQ的方法介紹了,在安裝MemcacheQ前,需要先安裝Libevent和BerkeleyDB。

美國服務(wù)器租用

版權(quán)聲明:本站文章來源標(biāo)注為YINGSOO的內(nèi)容版權(quán)均為本站所有,歡迎引用、轉(zhuǎn)載,請(qǐng)保持原文完整并注明來源及原文鏈接。禁止復(fù)制或仿造本網(wǎng)站,禁止在非www.sddonglingsh.com所屬的服務(wù)器上建立鏡像,否則將依法追究法律責(zé)任。本站部分內(nèi)容來源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來,僅供學(xué)習(xí)參考,不代表本站立場,如有內(nèi)容涉嫌侵權(quán),請(qǐng)聯(lián)系alex-e#qq.com處理。

實(shí)時(shí)開通

自選配置、實(shí)時(shí)開通

免備案

全球線路精選!

全天候客戶服務(wù)

7x24全年不間斷在線

專屬顧問服務(wù)

1對(duì)1客戶咨詢顧問

在線
客服

在線客服:7*24小時(shí)在線

客服
熱線

400-630-3752
7*24小時(shí)客服服務(wù)熱線

關(guān)注
微信

關(guān)注官方微信
頂部