欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

java實現(xiàn)memcache服務器的示例代碼-創(chuàng)新互聯(lián)

什么是Memcache?

創(chuàng)新互聯(lián)主要從事網(wǎng)站建設、網(wǎng)站制作、網(wǎng)頁設計、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務。立足成都服務嶺東,10多年網(wǎng)站建設經(jīng)驗,價格優(yōu)惠、服務專業(yè),歡迎來電咨詢建站服務:18982081108

Memcache集群環(huán)境下緩存解決方案


Memcache是一個高性能的分布式的內(nèi)存對象緩存系統(tǒng),通過在內(nèi)存里維護一個統(tǒng)一的巨大的hash表,它能夠用來存儲各種格式的數(shù)據(jù),包括圖像、視頻、文件以及數(shù)據(jù)庫檢索的結果等。簡單的說就是將數(shù)據(jù)調(diào)用到內(nèi)存中,然后從內(nèi)存中讀取,從而大大提高讀取速度。  


 Memcache是danga的一個項目,最早是LiveJournal 服務的,最初為了加速 LiveJournal 訪問速度而開發(fā)的,后來被很多大型的網(wǎng)站采用。  


Memcached是以守護程序方式運行于一個或多個服務器中,隨時會接收客戶端的連接和操作


為什么會有Memcache和memcached兩種名稱?

其實Memcache是這個項目的名稱,而memcached是它服務器端的主程序文件名,知道我的意思了吧。一個是項目名稱,一個是主程序文件名,在網(wǎng)上看到了很多人不明白,于是混用了。

Memcached是高性能的,分布式的內(nèi)存對象緩存系統(tǒng),用于在動態(tài)應用中減少數(shù)據(jù)庫負載,提升訪問速度。Memcached由Danga Interactive開發(fā),用于提升LiveJournal.com訪問速度的。LJ每秒動態(tài)頁面訪問量幾千次,用戶700萬。Memcached將數(shù)據(jù)庫負載大幅度降低,更好的分配資源,更快速訪問。


這篇文章將會涉及以下內(nèi)容:

  1. Java Socket多線程服務器
  2. Java IO
  3. Concurrency
  4. Memcache特性和協(xié)議

Memcache


Memcache is an in-memory key-value store for small chunks of arbitrary data (strings, objects) from results of databasecalls, API calls, or page rendering.


即內(nèi)存緩存數(shù)據(jù)庫,是一個鍵值對數(shù)據(jù)庫。該數(shù)據(jù)庫的存在是為了將從其他服務中獲取的數(shù)據(jù)暫存在內(nèi)存中,在重復訪問時可以直接從命中的緩存中返回。既加快了訪問速率,也減少了其他服務的負載。這里將實現(xiàn)一個單服務器版本的Memcache,并且支持多個客戶端的同時連接。

客戶端將與服務器建立telnet連接,然后按照Memcache協(xié)議與服務器緩存進行交互。這里實現(xiàn)的指令為get,set和del。先來看一下各個指令的格式

set


set屬于存儲指令,存儲指令的特點時,第一行輸入基本信息,第二行輸入其對應的value值。

set <key> <flags> <exptime> <bytes> [noreply]\r\n
<value>\r\n


如果存儲成功,將會返回STORED,如果指令中包含noreply屬性,則服務器將不會返回信息。


該指令中每個域的內(nèi)容如下:

  1. key: 鍵
  2. flags: 16位無符號整數(shù),會在get時隨鍵值對返回
  3. exptime: 過期時間,以秒為單位
  4. bytes:即將發(fā)送的value的長度
  5. noreply:是否需要服務器響應,為可選屬性

如果指令不符合標準,服務器將會返回ERROR。

get


get屬于獲取指令,該指令特點如下:

get <key>*\r\n


它支持傳入多個key的值,如果緩存命中了一個或者多個key,則會返回相應的數(shù)據(jù),并以END作為結尾。如果沒有命中,則返回的消息中不包含該key對應的值。格式如下:

VALUE <key> <flags> <bytes>\r\n
<data block>\r\n
VALUE <key> <flags> <bytes>\r\n
<data block>\r\n
END
del

分享名稱:java實現(xiàn)memcache服務器的示例代碼-創(chuàng)新互聯(lián)
標題URL:http://www.chinadenli.net/article12/pdcdc.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供動態(tài)網(wǎng)站軟件開發(fā)全網(wǎng)營銷推廣服務器托管小程序開發(fā)網(wǎng)站建設

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

商城網(wǎng)站建設