欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

基于C# 寫一個 Redis 數(shù)據(jù)同步小工具

 更新時間:2020年02月06日 09:21:47   作者:返回主頁 Love it or leave it  
Redis支持主從同步。數(shù)據(jù)可以從主服務(wù)器向任意數(shù)量的從服務(wù)器上同步,從服務(wù)器可以是關(guān)聯(lián)其他從服務(wù)器的主服務(wù)器。這篇文章主要介紹了用 C# 寫一個 Redis 數(shù)據(jù)同步小工具,需要的朋友可以參考下

概念

  Redis是一個開源的使用ANSI C語言編寫、支持網(wǎng)絡(luò)、可基于內(nèi)存亦可持久化的日志型、Key-Value數(shù)據(jù)庫,和Memcached類似,它支持存儲的value類型相對更多,包括string(字符串)、list(鏈表)、set(集合)、zset(sorted set --有序集合)和hash(哈希類型)。在此基礎(chǔ)上,redis支持各種不同方式的排序。與memcached一樣,為了保證效率,數(shù)據(jù)都是緩存在內(nèi)存中。區(qū)別的是redis會周期性的把更新的數(shù)據(jù)寫入磁盤或者把修改操作寫入追加的記錄文件,并且在此基礎(chǔ)上實現(xiàn)了master-slave(主從)同步。

  Redis支持主從同步。數(shù)據(jù)可以從主服務(wù)器向任意數(shù)量的從服務(wù)器上同步,從服務(wù)器可以是關(guān)聯(lián)其他從服務(wù)器的主服務(wù)器。這使得Redis可執(zhí)行單層樹復(fù)制。存盤可以有意無意的對數(shù)據(jù)進(jìn)行寫操作。

Intro#

為了實現(xiàn) redis 的數(shù)據(jù)遷移而寫的一個小工具,將一個實例中的 redis 數(shù)據(jù)同步到另外一個實例中。(原本打算找一個已有的工具去做,找了一個 nodejs 的小工具,結(jié)果折騰了好久都沒裝上。。。于是就自己寫了這個小工具)

之所以自己寫一個工具而不是利用 redis 備份機制來實現(xiàn),主要是因為我們用的是 redis 云服務(wù),不能像自己的服務(wù)器一樣 SSH 上去一頓操作,要把云服務(wù)的 redis 數(shù)據(jù)同步到自己服務(wù)器上的 redis 實例。

基本使用#
配置解讀#

{
 "AppSettings": {
  "SyncDatabases": "0,1",
  "BatchSize": 50
 },
 "ConnectionStrings": {
  "Source": "redis1:6379,asyncTimeout=30000,syncTimeout=30000",
  "Dest": "redis2:6379,password=123433,asyncTimeout=30000,syncTimeout=30000"
 }
}
  • AppSettings:SyncDatabases是要同步的 redis 數(shù)據(jù)庫,多個數(shù)據(jù)庫用英文的逗號分隔
  • AppSettings:BatchSize 是每次從源 redis 服務(wù)器讀取 N 個 key(分頁讀取,每頁 N 個)
  • ConnectionStrings:Source 代表了源 redis 服務(wù)器連接字符串
  • ConnectionStrings:Dest 代表了目標(biāo) redis 服務(wù)器連接字符串

redis 連接字符串詳細(xì)參數(shù)可以參考文檔:https://weihanli.github.io/StackExchange.Redis-docs-zh-cn/Configuration.html

執(zhí)行遷移#

修改 redis 配置之后(根據(jù)自己要同步數(shù)據(jù)量的大小設(shè)置超時時間),在項目根目錄下運行 dotnet run 即可,

Sample Run#

More#

支持同步/遷移的數(shù)據(jù)類型:

  • String
  • Hash
  • List
  • Set
  • ZSet(SortedSet)

實現(xiàn)源碼:https://github.com/WeihanLi/SamplesInPractice/tree/master/RedisCopy

Reference#

https://github.com/WeihanLi/SamplesInPractice/tree/master/RedisCopy
https://weihanli.github.io/StackExchange.Redis-docs-zh-cn/Configuration.html

總結(jié)

以上所述是小編給大家介紹的基于C# 寫一個 Redis 數(shù)據(jù)同步小工具,希望對大家有所幫助!

相關(guān)文章

  • C#中內(nèi)聯(lián)函數(shù)的用法介紹

    C#中內(nèi)聯(lián)函數(shù)的用法介紹

    這篇文章介紹了C#中內(nèi)聯(lián)函數(shù)的用法,文中通過示例代碼介紹的非常詳細(xì)。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-03-03
  • C# Invoke,begininvoke的用法詳解

    C# Invoke,begininvoke的用法詳解

    這篇文章主要介紹了C# Invoke,begininvoke的用法詳解,幫助大家更好的理解和使用c#,感興趣的朋友可以了解下
    2021-01-01
  • C# null 合并運算符??(雙問號)使用示例

    C# null 合并運算符??(雙問號)使用示例

    這篇文章主要介紹了C# null 合并運算符??(雙問號)使用示例,?? 運算符稱作 null 合并運算符。如果此運算符的左操作數(shù)不為 null,則此運算符將返回左操作數(shù);否則返回右操作數(shù),需要的朋友可以參考下
    2014-06-06
  • C#中實現(xiàn)網(wǎng)段掃描的代碼

    C#中實現(xiàn)網(wǎng)段掃描的代碼

    C#中實現(xiàn)網(wǎng)段掃描的代碼...
    2007-04-04
  • c#的datatable轉(zhuǎn)list示例

    c#的datatable轉(zhuǎn)list示例

    這篇文章主要介紹了c#的datatable轉(zhuǎn)list示例,代碼中有注釋,需要的朋友可以參考下
    2014-04-04
  • 簡單實現(xiàn)winform編輯器

    簡單實現(xiàn)winform編輯器

    這篇文章主要教大家如何簡單實現(xiàn)winform編輯器,功能很簡單,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-08-08
  • C# 使用Microsoft Edge WebView2的相關(guān)總結(jié)

    C# 使用Microsoft Edge WebView2的相關(guān)總結(jié)

    這篇文章主要介紹了C# 使用Microsoft Edge WebView2的相關(guān)總結(jié),幫助大家更好的理解和學(xué)習(xí)使用c#,感興趣的朋友可以了解下
    2021-02-02
  • C#獲取應(yīng)用程序路徑或Web頁面目錄路徑

    C#獲取應(yīng)用程序路徑或Web頁面目錄路徑

    這篇文章介紹了C#獲取應(yīng)用程序路徑或Web頁面目錄路徑的方法,文中通過示例代碼介紹的非常詳細(xì)。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-05-05
  • C#定時關(guān)閉窗體實例

    C#定時關(guān)閉窗體實例

    這篇文章主要介紹了C#定時關(guān)閉窗體實例,在Windows桌面應(yīng)用程序開發(fā)中具有一定的實用價值,需要的朋友可以參考下
    2014-10-10
  • c#使用nsoup解析html亂碼解決方法分享 nsoup教程

    c#使用nsoup解析html亂碼解決方法分享 nsoup教程

    NSoup是JSoup的Net移植版本。使用方法基本一致。如果項目涉及HTML的處理,強烈推薦NSoup。但是遺憾的是NSoup默認(rèn)的編碼是UTF-8,處理中文有亂碼,下面給出二種解決方法
    2014-01-01

最新評論