Redis入門

Redis 入門

一.Redis簡(jiǎn)介

Redis(http://redis.io)是一款開源的、高性能的鍵-值存儲(chǔ)(key-value store)羔杨,它是用ANSI C來編寫靶剑。Redis的項(xiàng)目名是Remote Dictionary Server的縮寫群凶,但它常被稱作是一款數(shù)據(jù)結(jié)構(gòu)服務(wù)器(data structureserver)柠偶。Redis的鍵值可以包括字符串(strings)户秤、哈希(hashes)螺捐、列表(lists)颠悬、集合(sets)和 有序集合(sorted sets)等數(shù)據(jù)類型。 對(duì)于這些數(shù)據(jù)類型定血,你可以執(zhí)行原子操作赔癌。例如:對(duì)字符串進(jìn)行附加操作(append);遞增哈希中的值澜沟;向列表中增加元素灾票;計(jì)算集合的交集、并集與差集等茫虽。

為了獲得優(yōu)異的性能铝条,Redis采用了內(nèi)存中(in-memory)數(shù)據(jù)集(dataset)的方式。根據(jù)使用場(chǎng)景的不同席噩,你可以每隔一段時(shí)間將數(shù)據(jù)集轉(zhuǎn)存到磁盤上來持久化數(shù)據(jù)班缰,或者在日志尾部追加每一條操作命令。

Redis同樣支持主從復(fù)制(master-slave replication)悼枢,并且具有非巢和快速的非阻塞首次同步(non-blockingfirst synchronization)、網(wǎng)絡(luò)斷開自動(dòng)重連等功能馒索。同時(shí)Redis還具有其它一些特性莹妒,其中包括簡(jiǎn)單的check-and-set機(jī)制、pub/sub和配置設(shè)置等绰上,以便使得Redis能夠表現(xiàn)得更像緩存(cache)旨怠。

Redis還提供了豐富的客戶端,以便支持現(xiàn)階段流行的大多數(shù)編程語言蜈块。

二.Redis安裝

Linux下運(yùn)行如下命令進(jìn)行安裝(linux上已經(jīng)安裝好了gcc):

$ wget http://download.redis.io/releases/redis-3.2.6.tar.gz
$ tar xzf redis-3.2.6.tar.gz
$ cd redis-3.2.6
$ make

make完后 redis-3.2.6./src目錄下會(huì)出現(xiàn)編譯后的redis服務(wù)程序redis-server鉴腻,還有用于測(cè)試的客戶端程序redis-cli迷扇。

下面啟動(dòng)redis服務(wù):

$./redis-server

這種方式啟動(dòng)redis 使用的是默認(rèn)配置。也可以通過啟動(dòng)參數(shù)告訴redis使用指定配置文件使用下面命令啟動(dòng):

$./redis-server../redis.conf

在redis-3.2.6目錄下的redis.conf是一個(gè)默認(rèn)的配置文件爽哎。我們可以根據(jù)需要使用自己的配置文件蜓席。

啟動(dòng)redis服務(wù)進(jìn)程后,就可以使用測(cè)試客戶端程序redis-cli和redis服務(wù)交互了:

$ ./redis-cli

redis 127.0.0.1:6379>set foo bar

OK

redis 127.0.0.1:6379>get foo

"bar"

上面演示了get和set命令操作簡(jiǎn)單類型value的例子课锌。foo是key 厨内,bar是個(gè)string類型的value。

停止Redis命令:

./redis-cli-p 6379 shutdown其中6379是redis的端口號(hào)

三.Redis客戶端

Redis的客戶端有很多渺贤,有C雏胃、C++、C#志鞍、Java瞭亮、PHP、Perl述雾、Python街州、Ruby等等,支持現(xiàn)階段流行的大多數(shù)編程語言玻孟,詳情請(qǐng)看redis官網(wǎng):http://redis.io/clients

下面是Java版的Redis客戶端示例:
客戶端jar包地址https://github.com/xetorthio/jedis/downloads
Maven POM中添加:

<dependency>
       <groupId>redis.clients</groupId>
       <artifactId>jedis</artifactId>
       <version>2.6.3</version>
</dependency>
public class JedisDemo {

    private Jedis jedis;

    @Before
    public void init() {
        //redis 服務(wù)器地址,端口
        jedis = new redis.clients.jedis.Jedis("127.0.0.1", 6379);
    }

    /**
     * String 字符串相關(guān)操作
     */
    @Test
    public void testString() {
        try {
            //添加字符串
            jedis.set("name", "pub");
            System.out.println(jedis.get("name"));
            //字符串拼接
            jedis.append("name", "info");
            System.out.println(jedis.get("name"));
            //刪除
            jedis.del("name");
            System.out.println(jedis.get("name"));
            //批量錄入
            jedis.mset("name", "pubinfo", "age", "23", "qq", "5201314");
            //自增操作 +1
            jedis.incr("age");
            System.out.println(jedis.get("name") + ",age=" + jedis.get("age"));
        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            jedis.disconnect();
        }
    }
}
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末唆缴,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子黍翎,更是在濱河造成了極大的恐慌面徽,老刑警劉巖,帶你破解...
    沈念sama閱讀 221,695評(píng)論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件匣掸,死亡現(xiàn)場(chǎng)離奇詭異趟紊,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)碰酝,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,569評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門霎匈,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人送爸,你說我怎么就攤上這事铛嘱。” “怎么了袭厂?”我有些...
    開封第一講書人閱讀 168,130評(píng)論 0 360
  • 文/不壞的土叔 我叫張陵墨吓,是天一觀的道長。 經(jīng)常有香客問我纹磺,道長帖烘,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 59,648評(píng)論 1 297
  • 正文 為了忘掉前任橄杨,我火速辦了婚禮秘症,結(jié)果婚禮上照卦,老公的妹妹穿的比我還像新娘。我一直安慰自己历极,他們只是感情好窄瘟,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,655評(píng)論 6 397
  • 文/花漫 我一把揭開白布衷佃。 她就那樣靜靜地躺著趟卸,像睡著了一般。 火紅的嫁衣襯著肌膚如雪氏义。 梳的紋絲不亂的頭發(fā)上锄列,一...
    開封第一講書人閱讀 52,268評(píng)論 1 309
  • 那天,我揣著相機(jī)與錄音惯悠,去河邊找鬼邻邮。 笑死,一個(gè)胖子當(dāng)著我的面吹牛克婶,可吹牛的內(nèi)容都是我干的筒严。 我是一名探鬼主播,決...
    沈念sama閱讀 40,835評(píng)論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼情萤,長吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼鸭蛙!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起筋岛,我...
    開封第一講書人閱讀 39,740評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤娶视,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后睁宰,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體肪获,經(jīng)...
    沈念sama閱讀 46,286評(píng)論 1 318
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,375評(píng)論 3 340
  • 正文 我和宋清朗相戀三年柒傻,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了孝赫。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,505評(píng)論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡红符,死狀恐怖青柄,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情违孝,我是刑警寧澤刹前,帶...
    沈念sama閱讀 36,185評(píng)論 5 350
  • 正文 年R本政府宣布,位于F島的核電站雌桑,受9級(jí)特大地震影響喇喉,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜校坑,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,873評(píng)論 3 333
  • 文/蒙蒙 一拣技、第九天 我趴在偏房一處隱蔽的房頂上張望千诬。 院中可真熱鬧,春花似錦膏斤、人聲如沸徐绑。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,357評(píng)論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽傲茄。三九已至,卻和暖如春沮榜,著一層夾襖步出監(jiān)牢的瞬間盘榨,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,466評(píng)論 1 272
  • 我被黑心中介騙來泰國打工蟆融, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留草巡,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,921評(píng)論 3 376
  • 正文 我出身青樓型酥,卻偏偏與公主長得像山憨,于是被迫代替她去往敵國和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子弥喉,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,515評(píng)論 2 359

推薦閱讀更多精彩內(nèi)容

  • Redis 是一個(gè)鍵值對(duì)數(shù)據(jù)庫(key-value DB)郁竟,數(shù)據(jù)庫的值可以是字符串、集合档桃、列表等多種類型的對(duì)象枪孩,而...
    吳昂_ff2d閱讀 3,242評(píng)論 0 5
  • [TOC] redis是什么 官方解釋:redis 是一個(gè)開源的,內(nèi)存中的K-V數(shù)據(jù)結(jié)構(gòu)存儲(chǔ)系統(tǒng)藻肄,它可以用作數(shù)據(jù)庫...
    0x70e8閱讀 465評(píng)論 0 1
  • 一蔑舞、Redis簡(jiǎn)介 1、Redis基本介紹 Redis中文網(wǎng) Reids是一款高性能的key-value數(shù)據(jù)庫嘹屯。同...
    慕凌峰閱讀 64,047評(píng)論 3 12
  • 1攻询、Redis簡(jiǎn)介 Redis是一個(gè)開源的使用ANSI C語言編寫、遵守BSD協(xié)議州弟、支持網(wǎng)絡(luò)钧栖、可基于內(nèi)存亦可持久化...
    AKyS佐毅閱讀 473評(píng)論 0 3
  • 我是一個(gè)貪婪的人,也是一個(gè)特別有野心的人婆翔。所以我之前最大的夢(mèng)想就是可以賺很多很多錢拯杠,然后買很多很多自己想要的東...
    阿斌傳媒工作室閱讀 213評(píng)論 1 3