redis 是徹底開源免費的,遵照BSD協議,是一個高性能的key-value數據庫。java
redis 與其餘key-value 緩存產品有如下三個特色:redis
1) 支持數據持久化,能夠將內存中的數據保存在磁盤中,重啓的時候能夠再次加載進行使用。數據庫
2) redis不只僅支持簡單的key-value類型的數據,同時還提供list set zset hash等數據結構的存儲。windows
3) redis支持數據備份,即master-slave模式的數據備份。api
redis 優勢:緩存
1)性能極高 讀的速度是110000次/s 寫的速度是81000次/s服務器
2) 豐富的數據類型 redis支持二進制案例的string、 list、 hash、 set、ordered set數據類型操做。數據結構
3) 原子 redis全部操做都是原子性的,要麼成功要麼失敗徹底不執行。單個操做是原子性,多個操做也支持事務,即原子性,經過multi和exec指令包起來。app
redis一般被稱爲數據結構服務器,由於值(value)能夠是字符串(string) 哈希(map) 列表(list)集合(sets) 有序集合(sorted sets)等類型。maven
1.啓動redis 服務時,出現以下圖:
解決方法:
刪除 E:\redis 文件夾下的 *.rdb 文件,重啓redis容器便可
成功啓動redis服務:
客戶端命令
如下主要講Java中使用jedis庫操做redis。
一。如下摘自百度百科:
1. 什麼是Redis
Redis是由意大利人Salvatore Sanfilippo(網名:antirez)開發的一款內存高速緩存數據庫。Redis全稱爲:Remote Dictionary Server(遠程數據服務),該軟件使用C語言編寫,Redis是一個key-value存儲系統,它支持豐富的數據類型,如:string、list、set、zset(sorted set)、hash。
2. Redis特色
Redis之內存做爲數據存儲介質,因此讀寫數據的效率極高,遠遠超過數據庫。以設置和獲取一個256字節字符串爲例,它的讀取速度可高達110000次/s,寫速度高達81000次/s。
Redis跟memcache不一樣的是,儲存在Redis中的數據是持久化的,斷電或重啓後,數據也不會丟失。由於Redis的存儲分爲內存存儲、磁盤存儲和log文件三部分,重啓後,Redis能夠從磁盤從新將數據加載到內存中,這些能夠經過配置文件對其進行配置,正由於這樣,Redis才能實現持久化。
Redis支持主從模式,能夠配置集羣,這樣更利於支撐起大型的項目,這也是Redis的一大亮點。
3. Redis應用場景,它能作什麼
衆多語言都支持Redis,由於Redis交換數據快,因此在服務器中經常使用來存儲一些須要頻繁調取的數據,這樣能夠大大節省系統直接讀取磁盤來得到數據的I/O開銷,更重要的是能夠極大提高速度。
拿大型網站來舉個例子,好比a網站首頁一天有100萬人訪問,其中有一個板塊爲推薦新聞。要是直接從數據庫查詢,那麼一天就要多消耗100萬次數據庫請求。上面已經說過,Redis支持豐富的數據類型,因此這徹底能夠用Redis來完成,將這種熱點數據存到Redis(內存)中,要用的時候,直接從內存取,極大的提升了速度和節約了服務器的開銷。
總之,Redis的應用是很是普遍的,並且極有價值,真是服務器中的一件利器,因此從如今開始,咱們就來一步步學好它。
二 。 jedis是官方推薦的,使用Java操做redis的類庫,推薦你們使用maven去構建項目,maven所需的jedis依賴以下:
<dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
<version>2.9.0</version>
</dependency>
其實這個依賴只有3個jar包,jedis-2.9.0.jar,commons-pool-1.6.jar,commons-pool2-2.4.2.jar,後面的兩個common的pool包,是配置jedis的鏈接池用的,若是不想使用鏈接池,那麼只要導入jedis-2.9.0.jar就夠了。
1.java 中 簡單的redis鏈接示例
左圖 爲鏈接代碼 右圖爲 運行結果
2. 初始化redis鏈接池
此處 是鏈接池的初始化配置。
從鏈接池中獲取鏈接的時候,運行報錯以下:
解決方式:
主要是因爲服務啓動的方式 。具體參考如下博文。
http://blog.csdn.net/u010011737/article/details/51149324
http://blog.csdn.net/rchm8519/article/details/48347797
Windows下使用redis requirepass認證不起做用
1.設置密碼
1)命令行的形式去修改
2) 修改安裝目錄下的redis.Windows.conf 配置文件,找到#requirepass footbared ,去掉註釋,變成 requirepass mypassword
ps:重啓以後,沒有起做用,在可會斷,輸入命令 config get requirepass 會出現
2. 建立redis-server.exe的快捷方式,右鍵快捷方式屬性,在目標後面增長 redis.windows.conf 這裏很關鍵,雖然以前咱們修改了 .conf文件,可是exe卻沒有使用這個conf
因此 咱們須要手動指定一下 exe 按照修改後的.conf運行。
redis 密碼相關 可參考如下博文:
http://blog.csdn.net/lxpbs8851/article/details/8136126
修改爲功密碼之後 重啓 就可用