- 序言
Redis 作者是意大利的Salvatore Sanfilippo(antirez),antirez是他的藝名,現在他已經被VMWare招安去安心做redis,不知道他是喜歡意大利歌女Alessia Merz還是十分討厭,反正他把redis的默認埠設定為了6379,是手機按鍵上MERZ對應的號碼,把埠號設定成美女的名字充滿了性意向,也反映了程式員這個群體的空虛寂寞冷,

圖中就是Alessia Merz
Redis的作者在2009年三月六日,星期五,在自己發表了一篇博客,在這篇博客里提到了他的redis,此時的redis 連0.1的版本都不是,只是一個beta 4的版本,

我們將要從最底下的那個版本講起,

這個版本的redis logo 實在不怎么好看,
“我想這是我第一次在這個博客上談到redis,但希望不是最后一次,
Redis 將是我明年hacking sessions 的主要目標,但愿這個能夠實作,
Redis 到底是干什么的呢?它是key-value資料庫,但它和memcachedb(memcached的一個持久化版本)以及其他類似資料庫有一些不同,例如許多key-value資料庫都可以這樣操作:
SET mykey foobar
GET mykey
DEL mykey
這使的這一類不需要加鎖的計算更加容易,比如set-if-not-exists操作等等,Redis的特色是不但可以有字串型別的資料,還可以存盤List Set等資料結構,
LPUSH user_100_messages "Indeed, you are right!"
LPUSH user_100_messages " .... "
LRANGE user_100_messages 0 10
前兩個操作是將元素放入鏈表中,最后一個操作是顯示這個鏈表中的前10個元素,同樣還可以對Sets 進行類似的增刪改查操作,以及幾個集合求并集等,“
這是摘錄并翻譯自作者博客中一段話,可以清楚地看到redis的目標是成為一個資料結構服務器,給程式員提供最大的方便,彌補關系型資料庫的不足,而這樣的資料庫的源代碼對于初入行的程式員還是多年的老水手都有借鑒的地方,
對于初入行的程式員最大的好處在于如何把校園里學到的資料結構變成一個優秀的輪子,把自己的理論知識近乎無縫地落到實踐中,然而直接看完美的源代碼并不能學到什么,只有經歷了一個輪子創造程序中的坑才能學好編碼,
所以就想到把redis 1.0 到redis 3.0 的變遷程序中自以為有點參考意義的更新,修改bug修正記錄下來,來拋磚引玉,
作者自己博客的第一次提到他的redis
redis google code
- 第一章 測驗一下redis作者第一個beta版本
因為redis的版本都只能在linux上運行,所以需要linux環境,如果是Mac 或者linux系統可以略過下邊的內容,如果是windows可以參考一下,
首先我們需要獲得一個虛擬機,筆者使用的是VMware workstation 12player ,是VMware的桌面免費版本,簡潔而又很好用,
vmware官網

下載完成后
還需要下載linux,筆者選用了ubuntu的最新版本,Ubuntu 14.04.1 LTS,
ubuntu下載地址

選擇用于開發者這個版本,
先安裝vmware,安裝后打開如下圖,

再創建虛擬機,選擇將虛擬機存盤為單個檔案,因為就實驗用一下,依個人喜好,



ubuntu14運行起來想流暢些,記憶體要多給些,

安裝好ubuntu,打開terminal,使用wget命令下載redis beta1的源檔案,這個鏈接需要翻墻,
http://redis.googlecode.com/files/redis-beta-1.tar.gz
redis的舊版本都在google code上的
http://code.google.com/p/redis/

用
tar -xvf redis-beta-1.tar.gz
來解壓縮,
然后輸入 make 命令進行編譯,然后你就擁有redis了就這么簡單,

輸入
./redis-server
就可以運行了


然后再打開一個終端視窗,然后到剛才編譯redis的目錄下
make test

結果中有一個error,這個bug會在接下來的程序中講解一下,然后修正它,
當然這是自動測驗的腳本,是呼叫了test-redis.tcl這個tcl腳本,
我們也可以用telnet 連接到redis上
telnet locahost 6379
然后輸入
lrange mylist 0 10
會得到剛才make test 插入的鏈表里的值,

待續,接下來會寫一些redis的基本使用和redis的架構詳解,
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/220628.html
標籤:java
上一篇:尼瑪,體檢結果一出來,洋哥慫了
