1. 程式人生 > >微信PK10源碼搭建與Redis_入門

微信PK10源碼搭建與Redis_入門

依靠 大量 工具 exe sele 模型 .gz 目前 64bit

一、Redis入門概述
1、是什麽

Redis:REmote DIctionary Server(遠程字典服務器)。是完全開源免費的,用C語言編寫的,遵守BSD協議,是一個高性能的 微信PK10源碼搭建QQ:2152876294 網址diguaym.com
(Key / Value)分布式內存數據庫,基於內存運行並支持持久化的NoSQL數據庫,是當前最熱門的NoSQL數據庫之一,也被人們稱為數據結構服務器。

Redis與其他 key-value緩存產品有以下三個特點:

Redis支持數據的持久化,可以將內存中的數據保持在磁盤中,重啟的時候可以再次加載進行使用
Redis不僅僅支持簡單的key-value類型的數據庫,同時還提供 list、set、zset、hash等數據結構的存儲

Redis支持數據的備份,即master-slave模式的數據備份
2、能幹嘛?

內存的存儲和持久化:Redis支持異步將內存中的數據寫到硬盤上,同時不影響繼續服務
取最新N個數據的操作,如:可以將最新的10條評論的ID放在Redis的List集合裏面
模擬類似於HttpSession這種需要設定過期時間的功能
發布、訂閱消息系統
定時器、計數器
3、怎麽玩?

數據類型、基本操作和配置
持久化和復制,RDB / AOF
事務的控制
復制
......

二、安裝
1、Windows版的安裝

下載到的Redis支持32bit和64bit。根據自己實際情況選擇,將64bit的內容cp到自定義盤符安裝目錄取名redis。 如 C:\reids

打開一個cmd窗口 使用cd命令切換目錄到 C:\redis 運行 redis-server.exe redis.conf 。
如果想方便的話,可以把redis的路徑加到系統的環境變量裏,這樣就省得再輸路徑了,後面的那個redis.conf可以省略,
如果省略,會啟用默認的。輸入之後,會顯示如下界面:

這時候另啟一個cmd窗口,原來的不要關閉,不然就無法訪問服務端了。
切換到redis目錄下運行 redis-cli.exe -h 127.0.0.1 -p 6379 。
設置鍵值對 set myKey abc
取出鍵值對 get myKey
註意(重要提示):由於企業裏面做Redis開發,99%都是Linux版的運用和安裝,幾乎不會涉及到Windows版。

2、Linux版安裝

1)下載獲得redis-3.0.4.tar.gz後將它放入我們的Linux目錄/opt

2)/opt目錄下,解壓命令:tar -zxvf redis-3.0.4.tar.gz

3)解壓完成後出現文件夾:redis-3.0.4

4)進入目錄:cd redis-3.0.4

5)在redis-3.0.4目錄下執行make命令

運行make命令時出現的錯誤解析:

① 安裝gcc

yum install gcc-c++
gcc是linux下的一個編譯程序,是C程序的編譯工具。
GCC(GNU Compiler Collection) 是 GNU(GNU‘s Not Unix) 計劃提供的編譯器家族,它能夠支持 C, C++, Objective-C, Fortran, Java 和 Ada 等等程序設計語言前端,同時能夠運行在 x86, x86-64, IA-64, PowerPC, SPARC 和 Alpha 等等幾乎目前所有的硬件平臺上。鑒於這些特征,以及 GCC 編譯代碼的高效性,使得 GCC 成為絕大多數自由軟件開發編譯的首選工具。雖然對於程序員們來說,編譯器只是一個工具,除了開發和維護人員,很少有人關註編譯器的發展,但是 GCC 的影響力是如此之大,它的性能提升甚至有望改善所有的自由軟件的運行效率,同時它的內部結構的變化也體現出現代編譯器發展的新特征。

6)再進行二次make,若報出:Jemalloc/jemalloc.h:表示沒有那個文件或目錄,那就 運行make distclean之後再make。

Redis Test可以不用執行

安裝TCL

7)如果make完成之後,繼續執行 :

make install

8)查看默認安裝目錄:usr/local/bin

① Redis-benchmark:性能測試工具,可以在自己本子上運行,看看自己本子性能如何——服務啟動起來後執行

② Redis-check-aof:修復有問題的AOF文件,rdb和aof後面講

③ Redis-check-dump:修復有問題的dump.rdb文件

④ Redis-sentinel:Redis集群使用

⑤ Redis-server:Redis服務器啟動命令

9)啟動

修改redis.conf文件,將裏面的daemonize 的no改為yes,讓服務在後臺啟動

將默認的redis.conf拷貝到自己定義好的一個路徑下,比如/myconf

啟動:

連通測試:

/usr/local/bin目錄下運行redis-server,運行拷貝出存放了自定義conf文件目錄下的redis.conf文件

使用:

關閉:

單實例關閉:

redis-cli shutdown
多實例關閉:

指定端口關閉:
redis-cli -p 6379 shutdown

三、Redis啟動後雜項基礎知識
1、單進程

單進程模型來處理客戶端的請求。對讀寫等事件的響應是通過對 epoll 函數的包裝來做到的。Redis 的實際處理速度完全依靠主進程的執行效率。

Epoll 是Linux內核為處理大批量的文件描述符而做了改進的 epoll,是Linux下多路復用IO接口 select/poll的增強版,它能顯著提高程序在大量的並發連接中只有少量活躍的情況下的系統CPU利用率。

2、默認16個數據庫,類似數組下表從零開始,初始默認使用零號庫

設置數據的數量,默認數據庫為0,可以使用 SELECT<dbid> 命令在連接上指定數據庫 id ,如 databases 16

3、SELECT命令切換數據庫

4、Dbsize查看當前數據庫的key的數量

5、Flushdb 清空當前庫

6、Flushall:通殺全部庫

7、統一密碼管理,16個庫都是使用相同的密碼,要麽全部OK,要麽一個也連不上

8、Redis索引都是從零開始

9、為什麽默認端口是 6379

微信PK10源碼搭建與Redis_入門