最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

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

 更新時間:2020年11月19日 09:16:40   作者:kiba518  
這篇文章主要給大家介紹了Redis新手入門的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

前言

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

下載Redis

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

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

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

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

重要文件講解:

redis-server.exe:Redis服務(wù)端宿主程序,運行后會啟動一個控制臺窗體,該窗體是宿主程序,如關(guān)閉窗體,則Redis服務(wù)關(guān)閉。

redis-check-dump.exe:本地數(shù)據(jù)庫檢查程序。

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

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

redis-cli.exe: Redis客戶端程序,服務(wù)端開啟后,可以通過該客戶端進行命令測試。(運行后,會啟動一個控制臺窗體,可在控制臺內(nèi)輸入命令)

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

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

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

了解Redis文件信息后,我們運行redis-server.exe,然后我們編寫一個C#的控制臺項目訪問Redis。

Redis訪問

C#想訪問Redis需要使用開源類庫,那么應(yīng)該使用哪個類庫呢?

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

這里我們使用ServiceStack.Redis來訪問Redis。

創(chuàng)建項目

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

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

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

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

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

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

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

下載RedisStudio。

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

運行RedisStudio,連接本地Redis,如下圖:

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

可以看到,我們添加的數(shù)據(jù)被寫進了第0個數(shù)據(jù)庫(Redis默認會創(chuàng)建16個數(shù)據(jù)庫,數(shù)據(jù)庫編號以0開頭)。

Redis的Windows服務(wù)

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

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

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

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

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

參數(shù)介紹:

service-install:啟動Redis服務(wù)安裝,必須是第一個參數(shù)。

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

loglevel verbose:日志級別。

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

查看服務(wù)。

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

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

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

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

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

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

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

配置密碼

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

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

因為上文我們配置Windows服務(wù)時,指定了redis.windows.conf文件為配置文件,所以我們現(xiàn)在需要在redis.windows.conf文件中配置密碼。

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

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

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

這是因為我們上文配置的連接字符串是【localhost:6379】這里面只有IP和端口,現(xiàn)在因為有了密碼所以這個字符串不在合法了。

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

private static string ConnStr = 123456@localhost:6379;

項目成功運行,訪問Redis數(shù)據(jù)庫成功,如下圖:

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

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

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

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

總結(jié)

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

相關(guān)文章

  • windows 64位下redis安裝教程

    windows 64位下redis安裝教程

    這篇文章主要為大家詳細介紹了windows 64位下redis安裝教程,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-10-10
  • Windows環(huán)境下查看、添加、修改redis數(shù)據(jù)庫的密碼兩種方式

    Windows環(huán)境下查看、添加、修改redis數(shù)據(jù)庫的密碼兩種方式

    在Windows系統(tǒng)上設(shè)置Redis密碼的過程與Linux系統(tǒng)類似,但需注意幾個關(guān)鍵步驟以確保正確配置,這篇文章主要給大家介紹了關(guān)于Windows環(huán)境下查看、添加、修改redis數(shù)據(jù)庫的密碼兩種方式,需要的朋友可以參考下
    2024-07-07
  • 深入理解redis分布式鎖和消息隊列

    深入理解redis分布式鎖和消息隊列

    本篇文章主要介紹了深入理解redis分布式鎖和消息隊列,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-07-07
  • Redis Key過期監(jiān)聽的配置詳解

    Redis Key過期監(jiān)聽的配置詳解

    這篇文章主要介紹了Redis Key過期監(jiān)聽配置,默認情況下在Windows系統(tǒng)中雙擊redis-server.exe用的是內(nèi)置的配置文件,文中通過代碼示例和圖文講解的非常詳細,對大家的學(xué)習(xí)或工作有一定的幫助,需要的朋友可以參考下
    2024-06-06
  • 基于Redis實現(xiàn)消息隊列的示例代碼

    基于Redis實現(xiàn)消息隊列的示例代碼

    消息隊列在分布式系統(tǒng)中非常重要,能夠有效解耦系統(tǒng)的各個模塊,提供異步處理能力和緩沖能力,本文介紹了基于Redis實現(xiàn)消息隊列的示例代碼,感興趣的可以了解一下
    2025-04-04
  • Redis7.0部署集群的實現(xiàn)步驟

    Redis7.0部署集群的實現(xiàn)步驟

    本文主要介紹了Redis7.0部署集群的實現(xiàn)步驟,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-06-06
  • Redis配置外網(wǎng)可訪問(redis遠程連接不上)的方法

    Redis配置外網(wǎng)可訪問(redis遠程連接不上)的方法

    默認情況下,當(dāng)我們在部署了redis服務(wù)之后,redis本身默認只允許本地訪問。Redis服務(wù)端只允許它所在服務(wù)器上的客戶端訪問,如果Redis服務(wù)端和Redis客戶端不在同一個機器上,就要進行配置。
    2022-12-12
  • Redis服務(wù)器的啟動過程分析

    Redis服務(wù)器的啟動過程分析

    這篇文章主要介紹了Redis服務(wù)器的啟動過程分析,本文講解了初始化Redis服務(wù)器全局配置、加載配置文件、初始化服務(wù)器、加載數(shù)據(jù)、開始網(wǎng)絡(luò)監(jiān)聽等內(nèi)容,需要的朋友可以參考下
    2015-04-04
  • Redis緩存穿透出現(xiàn)原因及解決方案

    Redis緩存穿透出現(xiàn)原因及解決方案

    這篇文章主要介紹了Redis緩存穿透出現(xiàn)原因及解決方案,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-08-08
  • Redis02 使用Redis數(shù)據(jù)庫(String類型)全面解析

    Redis02 使用Redis數(shù)據(jù)庫(String類型)全面解析

    這篇文章主要介紹了Redis02 使用Redis數(shù)據(jù)庫(String類型)全面解析的相關(guān)資料,非常不錯,具有參考借鑒價值,需要的朋友可以參考下
    2016-07-07

最新評論

胶南市| 清徐县| 夹江县| 年辖:市辖区| 城固县| 宿松县| 滨州市| 定安县| 昌图县| 东丰县| 友谊县| 陆河县| 咸丰县| 信丰县| 寿宁县| 金华市| 故城县| 伊宁市| 贵定县| 易门县| 邻水| 田阳县| 开化县| 外汇| 罗甸县| 莱西市| 武平县| 哈巴河县| 盐边县| 土默特左旗| 克山县| 宁晋县| 靖边县| 建宁县| 丹凤县| 南岸区| 昔阳县| 井研县| 故城县| 冷水江市| 盘山县|