濮阳杆衣贸易有限公司

主頁(yè) > 知識(shí)庫(kù) > 全網(wǎng)最完整的Redis新手入門指導(dǎo)教程

全網(wǎng)最完整的Redis新手入門指導(dǎo)教程

熱門標(biāo)簽:超呼電話機(jī)器人 鄭州人工智能電銷機(jī)器人系統(tǒng) 魔獸2青云地圖標(biāo)注 貴州電銷卡外呼系統(tǒng) 宿遷便宜外呼系統(tǒng)平臺(tái) 十堰營(yíng)銷電銷機(jī)器人哪家便宜 北京400電話辦理收費(fèi)標(biāo)準(zhǔn) 日本中國(guó)地圖標(biāo)注 山東外呼銷售系統(tǒng)招商

前言

本文提供全網(wǎng)最完整的Redis入門指導(dǎo)教程,下面我們從下載Redis安裝包開(kāi)始,一步一步的學(xué)習(xí)使用。

下載Redis

官網(wǎng)提供的Redis安裝包是服務(wù)于Linux的,而我們需要在Window下使用Redis,所以,我們?nèi)ハ旅孢@個(gè)網(wǎng)址中下載。

Redis的下載地址:https://github.com/microsoftarchive/redis/releases。

如下圖所示,Redis的windows版是由microsoftarchive提供,是微軟的一個(gè)工作小組,所以我們可以選擇完全信任,下面我們選擇最新版的Redis版本下載(可以看到,盡管是最新版本,但最后一次提交已經(jīng)是2016年了)

下載完成后解壓到文件夾,得到文件如下:

重要文件講解:

redis-server.exe:Redis服務(wù)端宿主程序,運(yùn)行后會(huì)啟動(dòng)一個(gè)控制臺(tái)窗體,該窗體是宿主程序,如關(guān)閉窗體,則Redis服務(wù)關(guān)閉。

redis-check-dump.exe:本地?cái)?shù)據(jù)庫(kù)檢查程序。

redis-check-aof.exe:更新日志檢查程序。

redis-benchmark.exe:性能測(cè)試,用以模擬同時(shí)由N個(gè)客戶端發(fā)送M個(gè) SETs/GETs 查詢。

redis-cli.exe: Redis客戶端程序,服務(wù)端開(kāi)啟后,可以通過(guò)該客戶端進(jìn)行命令測(cè)試。(運(yùn)行后,會(huì)啟動(dòng)一個(gè)控制臺(tái)窗體,可在控制臺(tái)內(nèi)輸入命令)

Windows Service Documentation.docx:Redis服務(wù)端使用文檔。

redis.windows-service.conf:Redis啟動(dòng)服務(wù)默認(rèn)加載的配置文件(下文會(huì)介紹如何將Redis服務(wù)已Windows服務(wù)模式啟動(dòng)),雙擊redis-server.exe啟動(dòng)時(shí)并不加載該文件,雙擊exe啟動(dòng)時(shí)會(huì)提示未指定配置文件,使用默認(rèn)配置,這個(gè)默認(rèn)配置應(yīng)該是exe內(nèi)部編寫的。

redis.windows.conf :Redis配置文件,其內(nèi)容和redis.windows-service.conf是一模一樣的,相當(dāng)于一個(gè)備份,如果希望Redis讀取的配置文件是redis.windows.conf ,則需要對(duì)Redis進(jìn)行命令操作,重新設(shè)置配置文件。

了解Redis文件信息后,我們運(yùn)行redis-server.exe,然后我們編寫一個(gè)C#的控制臺(tái)項(xiàng)目訪問(wèn)Redis。

Redis訪問(wèn)

C#想訪問(wèn)Redis需要使用開(kāi)源類庫(kù),那么應(yīng)該使用哪個(gè)類庫(kù)呢?

打開(kāi)Redis的中文官網(wǎng)http://www.redis.cn/,在客戶端菜單下可以發(fā)現(xiàn)C#可用的Redis客戶端很多,如下圖:

這里我們使用ServiceStack.Redis來(lái)訪問(wèn)Redis。

創(chuàng)建項(xiàng)目

首先我們創(chuàng)建一個(gè)項(xiàng)目RedisConsole,然后在Nuget下搜索ServiceStack.Redis,如下圖:

然后創(chuàng)建一個(gè)RedisManager類來(lái)管理Redis,代碼如下:

using ServiceStack.Redis;
using ServiceStack.Text;
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Runtime.Serialization.Formatters.Binary;
using System.Text;
using System.Threading.Tasks;
​
namespace RedisConsole
{
  /// summary>
  /// RedisManager類主要是創(chuàng)建鏈接池管理對(duì)象的
  /// /summary>
  public class RedisManager
  {
    /// summary>
    /// 綁定本機(jī)Redis
    /// /summary>
    private static string ConnStr = "localhost:6379";//password@ip:port 123@localhost:6379
    private static PooledRedisClientManager _prcm;
​
     
    /// summary>
    /// 靜態(tài)構(gòu)造方法,初始化鏈接池管理對(duì)象
    /// /summary>
    static RedisManager()
    {
      _prcm = CreateManager(new string[] { ConnStr }, new string[] { ConnStr });
    }
    /// summary>
    /// 創(chuàng)建鏈接池管理對(duì)象
    /// /summary>
    private static PooledRedisClientManager CreateManager(string[] readWriteHosts, string[] readOnlyHosts)
    {
      //WriteServerList:可寫的Redis鏈接地址。
      //ReadServerList:可讀的Redis鏈接地址。
      //MaxWritePoolSize:最大寫鏈接數(shù)。
      //MaxReadPoolSize:最大讀鏈接數(shù)。
      //AutoStart:自動(dòng)重啟。
      //LocalCacheTime:本地緩存到期時(shí)間,單位:秒。
      //RecordeLog:是否記錄日志,該設(shè)置僅用于排查redis運(yùn)行時(shí)出現(xiàn)的問(wèn)題,如redis工作正常,請(qǐng)關(guān)閉該項(xiàng)。
      //RedisConfigInfo類是記錄redis連接信息,此信息和配置文件中的RedisConfig相呼應(yīng)
      // 支持讀寫分離,均衡負(fù)載
      return new PooledRedisClientManager(readWriteHosts, readOnlyHosts, new RedisClientManagerConfig
      {
        MaxWritePoolSize = 5, // “寫”鏈接池鏈接數(shù)
        MaxReadPoolSize = 5, // “讀”鏈接池鏈接數(shù)
        AutoStart = true,
      },
      0,//初始化數(shù)據(jù)庫(kù) 默認(rèn)有16個(gè)數(shù)據(jù) 這里設(shè)置初始化為第0個(gè)
      50,//連接池?cái)?shù)量
      5//連接池超時(shí)秒數(shù)
      )
      {
        ConnectTimeout = 6000,//連接超時(shí)時(shí)間,毫秒
        SocketSendTimeout = 6000,//數(shù)據(jù)發(fā)送超時(shí)時(shí)間,毫秒
        SocketReceiveTimeout = 6000,// 數(shù)據(jù)接收超時(shí)時(shí)間,毫秒
        IdleTimeOutSecs = 60,//連接最大的空閑時(shí)間 默認(rèn)是240
        PoolTimeout = 6000 //連接池取鏈接的超時(shí)時(shí)間,毫秒
      };
    }
​
    /// summary>
    /// 客戶端緩存操作對(duì)象
    /// /summary>
    public static IRedisClient GetClient()
    {
      if (_prcm == null)
      {
        _prcm = CreateManager(new string[] { RedisPath }, new string[] { RedisPath });
      }
      return _prcm.GetClient();
    }
  }
 }

然后在Main函數(shù)里使用RedisManager來(lái)進(jìn)行寫入和讀取,代碼如下:

static void Main(string[] args)
    {
      var redisClient = RedisManager.GetClient();
      redisClient.Setstring>("Name", "Kiba518");
      redisClient.Setint>("Age", 10000); 
      Console.WriteLine($"MyName:{redisClient.Getstring>("Name")}====MyAge:{redisClient.Getint>("Age")}");
      redisClient.Dispose(); //釋放內(nèi)存
      Console.ReadLine();
    }

運(yùn)行結(jié)果如下圖所示:

可以看到,我們成功的完成了Redis的插入和讀取。

但我們不滿足于此,我們需要一個(gè)圖形管理界面更直觀的查看Redis數(shù)據(jù)庫(kù)。

下載RedisStudio。

下載地址:https://github.com/cinience/RedisStudio/releases

運(yùn)行RedisStudio,連接本地Redis,如下圖:

連接成功后,點(diǎn)擊Data菜單,查看數(shù)據(jù)。

可以看到,我們添加的數(shù)據(jù)被寫進(jìn)了第0個(gè)數(shù)據(jù)庫(kù)(Redis默認(rèn)會(huì)創(chuàng)建16個(gè)數(shù)據(jù)庫(kù),數(shù)據(jù)庫(kù)編號(hào)以0開(kāi)頭)。

Redis的Windows服務(wù)

使用Cmd的命令窗口作為Redis的宿主進(jìn)程確實(shí)有一些問(wèn)題,比如關(guān)閉了就不能用了,比如不能開(kāi)機(jī)自啟。為了讓Redis服務(wù)可以更好的運(yùn)行,我們需要把Redis的宿主改成Windows是服務(wù)。

這件事不需要我們自行開(kāi)發(fā),redis-server.exe中已經(jīng)提供了這些功能,它的Main函數(shù)會(huì)處理一些他接受的參數(shù)。

現(xiàn)在我們使用命令行啟動(dòng)redis-server.exe。

注:使用Redis命令時(shí),需要在先將目錄跳轉(zhuǎn)到Redis所在文件夾,如【cd/d D:\Redis-x64-3.2.100】

redis-server.exe --service-install redis.windows.conf --loglevel verbose

參數(shù)介紹:

service-install:?jiǎn)?dòng)Redis服務(wù)安裝,必須是第一個(gè)參數(shù)。

redis.windows.conf:指定配置文件。

loglevel verbose:日志級(jí)別。

CMD運(yùn)行結(jié)果如下圖所示:

查看服務(wù)。

如上圖所示,服務(wù)已經(jīng)成功的安裝到系統(tǒng)中了,右鍵就可以啟動(dòng)服務(wù)了。

當(dāng)然我們也可以通過(guò)命令行啟動(dòng)和關(guān)閉服務(wù),命令如下:

啟動(dòng)服務(wù)命令:redis-server.exe --service-start

關(guān)閉服務(wù)命令:redis-server.exe --service-stop

刪除服務(wù)命令:redis-server.exe--service-uninstall

CMD運(yùn)行關(guān)閉服務(wù)結(jié)果如下圖:

注意:redis.windows.conf文件默認(rèn)配置的IP需要修改成本機(jī)的IP,window服務(wù)才能正常啟動(dòng)。

配置密碼

我們都知道數(shù)據(jù)庫(kù)是需要密碼的,這樣才能保證安全性,不然任何一個(gè)知道你服務(wù)器IP的人只要按個(gè)端口試一遍就可以連接你的數(shù)據(jù)庫(kù)了。

Redis的數(shù)據(jù)庫(kù)密碼需要在配置文件中設(shè)置,默認(rèn)是沒(méi)有密碼的。

因?yàn)樯衔奈覀兣渲肳indows服務(wù)時(shí),指定了redis.windows.conf文件為配置文件,所以我們現(xiàn)在需要在redis.windows.conf文件中配置密碼。

打開(kāi)redis.windows.conf文件,搜索【# requirepass foobared】定位到配置密碼的行(配置文件中#為注釋符),然后在該行下方輸入requirepass 123456,其中123456就是數(shù)據(jù)庫(kù)的密碼了,如下圖所示:

現(xiàn)在我們測(cè)試一下,運(yùn)行我們剛才的項(xiàng)目,結(jié)果如下圖所示:

可以看到,系統(tǒng)提示了驗(yàn)證錯(cuò)誤的異常。

這是因?yàn)槲覀兩衔呐渲玫倪B接字符串是【localhost:6379】這里面只有IP和端口,現(xiàn)在因?yàn)橛辛嗣艽a所以這個(gè)字符串不在合法了。

現(xiàn)在我們將密碼加入進(jìn)字符串,修改代碼如下:

private static string ConnStr = 123456@localhost:6379;

項(xiàng)目成功運(yùn)行,訪問(wèn)Redis數(shù)據(jù)庫(kù)成功,如下圖:

----------------------------------------------------------------------------------------------------

代碼已經(jīng)傳到Github上了,歡迎大家下載。

Github地址:https://github.com/kiba518/RedisConsole

----------------------------------------------------------------------------------------------------

總結(jié)

到此這篇關(guān)于Redis新手入門指導(dǎo)教程的文章就介紹到這了,更多相關(guān)Redis新手入門教程內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • 超強(qiáng)、超詳細(xì)Redis數(shù)據(jù)庫(kù)入門教程
  • Redis入門教程_動(dòng)力節(jié)點(diǎn)Java學(xué)院整理
  • redis4.0入門小結(jié)
  • redis常用命令、常見(jiàn)錯(cuò)誤、配置技巧等分享
  • Redis操作命令總結(jié)
  • Redis中5種數(shù)據(jù)結(jié)構(gòu)的使用場(chǎng)景介紹
  • Redis中統(tǒng)計(jì)各種數(shù)據(jù)大小的方法
  • redis常用命令小結(jié)
  • 讓Redis在你的系統(tǒng)中發(fā)揮更大作用的幾點(diǎn)建議

標(biāo)簽:北京 朝陽(yáng) 江蘇 果洛 臺(tái)州 吉安 大慶 楊凌

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《全網(wǎng)最完整的Redis新手入門指導(dǎo)教程》,本文關(guān)鍵詞  全網(wǎng),最,完整,的,Redis,新手入門,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《全網(wǎng)最完整的Redis新手入門指導(dǎo)教程》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于全網(wǎng)最完整的Redis新手入門指導(dǎo)教程的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    麻江县| 濉溪县| 包头市| 长宁县| 小金县| 全州县| 盐城市| 福海县| 双峰县| 威远县| 万安县| 都匀市| 洞口县| 顺平县| 江永县| 抚松县| 北京市| 塔河县| 铜梁县| 正蓝旗| 崇明县| 桦南县| 安达市| 漳平市| 增城市| 禄丰县| 瓮安县| 偃师市| 泰顺县| 山丹县| 普定县| 汤阴县| 开阳县| 汝城县| 静海县| 吉水县| 灵川县| 双江| 诏安县| 庆城县| 湟源县|