真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯網站制作重慶分公司

一文教你正確的使用Redis-創(chuàng)新互聯

一文教你正確的使用Redis?針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。

專注于為中小企業(yè)提供成都做網站、網站設計服務,電腦端+手機端+微信端的三站合一,更高效的管理,為中小企業(yè)莊河免費做網站提供優(yōu)質的服務。我們立足成都,凝聚了一批互聯網行業(yè)人才,有力地推動了1000多家企業(yè)的穩(wěn)健成長,幫助中小企業(yè)通過網站建設實現規(guī)模擴充和轉變。

下載Redis

官網提供的Redis安裝包是服務于Linux的,而我們需要在Window下使用Redis,

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

一文教你正確的使用Redis

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

一文教你正確的使用Redis

重要文件講解:

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

redis-check-dump.exe:本地數據庫檢查程序。

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

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

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

Windows Service Documentation.docx:Redis服務端使用文檔。

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

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

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

Redis訪問

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

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

一文教你正確的使用Redis

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

創(chuàng)建項目

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

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

分享名稱:一文教你正確的使用Redis-創(chuàng)新互聯
網頁URL:http://weahome.cn/article/shpoh.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部