今天就跟大家聊聊有關(guān)suse linux下memcached的安裝配置是怎么樣的,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。
站在用戶的角度思考問題,與客戶深入溝通,找到赫山網(wǎng)站設(shè)計與赫山網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗,讓設(shè)計與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個性化、用戶體驗好的作品,建站類型包括:網(wǎng)站制作、成都做網(wǎng)站、企業(yè)官網(wǎng)、英文網(wǎng)站、手機端網(wǎng)站、網(wǎng)站推廣、域名注冊、虛擬空間、企業(yè)郵箱。業(yè)務(wù)覆蓋赫山地區(qū)。
Memcached 是一個高性能的分布式內(nèi)存對象緩存系統(tǒng),用于動態(tài)Web應(yīng)用以減輕數(shù)據(jù)庫負(fù)載。它通過在內(nèi)存中緩存數(shù)據(jù)和對象來減少讀取數(shù)據(jù)庫的次數(shù),從而將數(shù)據(jù)庫負(fù)載大幅度降低,更好的分配資源,實現(xiàn)更快速訪問。
Memcached使用了libevent來均衡任何數(shù)量的打開鏈接,使用非阻塞的網(wǎng)絡(luò)I/O,對內(nèi)部對象實現(xiàn)引用計數(shù), 使用自己的頁塊分配器和哈希表,因此虛擬內(nèi)存不會產(chǎn)生碎片。
環(huán)境:SUSE LINUX ENTERPRISE SERVER 10 (64bit)
軟件版本:libevent-2.0.10 memcached-1.4.5
一、安裝Memcached
Memcached會用到libevent這個庫來進行Socket的處理,所以先安裝libevent。具體步驟如下:
1、安裝libevent:
# tar zxvf libevent-2.0.10-stable.tar.gz
# cd libevent-2.0.10-stable
# ./configure -prefix=/usr(指定安裝路徑)
注意紅框中的三個NO,主要是因為沒有GCC和C、C++的編譯環(huán)境,插入SUSE LINUX 10的光盤利用YAST2命令安裝相應(yīng)的包即可。
# make
# make install
注:需要的包大致是
glibc-devel-2.4-31.74.1.x86_64.rpm
libmudflap-4.1.2_20070115-0.29.6.x86_64.rpm
gcc-4.1.2_20070115-0.29.6.x86_64.rpm
libstdc++-devel-4.1.2_20070115-0.29.6.x86_64.rpm
gcc-c++-4.1.2_20070115-0.29.6.x86_64.rpm
2、測試libevent是否安裝成功
5、啟動Memcached的服務(wù)器端:
# /usr/local/bin/memcached -d -m 1000 -u root -l 192.168.1.252 -p 8990 -c 2000 -P /tmp/memcached.pid
-d選項是啟動一個守護進程
-m是分配給Memcached使用的內(nèi)存數(shù)量,單位是MB,我這里是1000MB
-u是運行Memcached的用戶,我這里是root
-l是監(jiān)聽的服務(wù)器IP地址,我這里指定服務(wù)器的IP地址192.168.1.252
-p是設(shè)置Memcached監(jiān)聽的端口,我這里設(shè)置了8990,最好是1024以上的端口
-c選項是最大運行的并發(fā)連接數(shù),默認(rèn)是1024,我這里設(shè)置了2000,按照你服務(wù)器的負(fù)載量來設(shè)定
-P是設(shè)置保存Memcached的pid文件,我這里是保存在 /tmp/memcached.pid
如果要結(jié)束Memcached進程,執(zhí)行:
# kill cat /tmp/memcached.pid
也可以啟動多個守護進程,不過端口不能重復(fù)。
6、啟動Memcached的服務(wù)器端遇到的錯誤解決:
如圖:
7、再配置一下客戶端就好了。
二、 memcached client for java 客戶端
下載最新版的客戶端程序包:java_memcached-release_2.5.1.zip,解壓后,文件夾里找到j(luò)ava_memcached-release_2.5.1.jar,這個就是客戶端的JAR包。將此JAR包添加到項目的構(gòu)建路徑里,則項目中就可以使用Memcached了。
示例代碼:
import com.danga.MemCached.*;
public class MyCache {
public static void main(String[] args) {
/**
* 初始化SockIOPool,管理memcached的連接池
* */
String[] servers = { "192.168.1.252:8990">
SockIOPool pool = SockIOPool.getInstance();
pool.setServers(servers);
pool.setFailover(true);
pool.setInitConn(10);
pool.setMinConn(5);
pool.setMaxConn(250);
pool.setMaintSleep(30);
pool.setNagle(false);
pool.setSocketTO(3000);
pool.setAliveCheck(true);
pool.initialize();
/**
* 建立MemcachedClient實例
* */
MemCachedClient memCachedClient = new MemCachedClient();
for (int i = 0; i < 1000; i++) {
/**
* 將對象加入到memcached緩存
* */
boolean success = memCachedClient.set("" + i, "Hello!");
/**
* 從memcached緩存中按key值取對象
* */
String result = (String) memCachedClient.get("" + i);
System.out.println(String.format("set( %d ): %s", i, success));
System.out.println(String.format("get( %d ): %s", i, result));
}
}
}
看完上述內(nèi)容,你們對suse linux下memcached的安裝配置是怎么樣的有進一步的了解嗎?如果還想了解更多知識或者相關(guān)內(nèi)容,請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝大家的支持。