發表文章

Redis開發學習(3)_StackExchange.Redis_打印Server相關資訊

圖片
這次我們回到C#程式這邊使用StackExchange.Redis API進行開發 簡單來講其實就是把第二堂學習中指令的方式轉成用程式來進行操作而已 或許有人覺得上次介紹的安裝方式有點難 那我們在分享第二種方式導入StackExchange.Redis Step1. Tools -> NuGet Package Manager -> Manage NuGet Packages for Solution Step2. 左側切換到 Online頁簽後 在去右上角搜尋欄查看看 Redis 一鍵點擊Install (一些描述在右側可以查看的到) 如果跳了窗顯示如下描述 就切換你的.NET Framework version再重試一次 對你的project右鍵進到屬性後的Application 將 default設的4.5改為4.6.1 再Try一次 還是不行調整成 4.7.2再Try一次 有缺framework就再自行下載 https://dotnet.microsoft.com/download/visual-studio-sdks?utm_source=getdotnetsdk&utm_medium=referral 這裡就不用這麼新的版本了 暫時使用1.2.6搭配.NET  Framework4.5 (在某些公司中可能會固定使用特定穩定版當在串其他庫時就要小心連鎖反應) 這種安裝方式會有個壞處就是只能抓最新版 這裡記得當你對一個方案進行過Install command執行後 之後方案中其他的project(可能後來才new的)要手動在自己 Add Reference 當你已經開啟Redis Server 而且也已經New好一個專案並導入StackExchange.Redis之後 就可以嘗試看看如下有關於Server作業的程式 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 ...

Redis開發學習(2)_In-memory database跟On Disk(Relational) database比較_cli的基礎20大指令(資料型態介紹)

圖片
傳統的B/S 架構中 由於Server端餘後端進行資料存取過程會導致磁碟操作負載 那就有可能客戶端會反應系統更新處理資料變慢的可能 尤其當資料數達一定量後也會時常發生 以往可能處理方式會再多買幾台Server擴充硬碟等等 那在軟體上的問題解決方式則會有如下兩種 其基本核心思想都是在於避免直接對DB進行存取訪問 (1)網頁靜態化(對於網站、網頁應用) 這塊由於沒有很深入 大概意思應該是說 在進行資料庫訪問之前就先透過其他的process先把DB中的資料抓出來再生出靜態網頁 當客戶端要訪問這些資料時 Server就不再是直接去操作DB 而是去把應靜態化頁面展示出來 https://kknews.cc/zh-tw/other/5m8a5ql.html https://www.youtube.com/watch?v=UxbiRCA6IBk (2)將資料保存到記憶體中(常見的In-memory DB: MemoryCached , Redis) 而當客戶端需要資料更新處理時對於Server訪問後 Server會先去memory中判斷是否有該用戶要的資料若沒有才進行DB的I/O 基礎的cli指令 接下來我們要示範的是 基礎的cli指令 各位我們在上一次的範例透過C#嵌入StackExchanged.Redis 的小專案有新增一個key 這次我們要進行一個實驗 來讓你更加對In-memory這個詞有深刻體悟 這次我們將key替換成name 並透過API設置 value 為 Wang 你會發現在自開的cli  terminal中也同步更新了目前資料庫的key list cli的基礎20大指令 (備註:對於指令部分是大小寫都可以的喔!!! 差別在於有些模糊字串比對的pattern會區分大小寫 輸入到一半打TAB會自動補齊 是很好用技巧 此外 1 在 redis cli command中大部分代表成功 反之就是 0 ) 指令1. KEYS pattern   取出鍵名清單 查看目前存於記憶體中所有key Redis指令如果想要查看目前的鍵值 可以在你啟動完cli後 輸入: keys * 會列出存於記憶體中所...