背景
技術的更新迭代,是程序員最最最頭大的事,總是在每個網絡角落中有感慨聲:學不動啦;
其實新技術並不是憑空而出,而是隨着業務推進、數據驅動、技術積累促使開發者的不斷探索和實踐,最終橫空出世--“新技術”;
對於項目而言,並不是一開始就能把所有的需求、架構和性能都做到極致,而是通過一次次的迭代;最經典的的案例就是淘寶網的演變,從最初的單體程序到現在人人都效仿的大項目,其經歷了無數次的變遷和優化(“淘寶技術這十年”記錄了一次次的優化過程);
由於互聯網的高並發、高可擴、高性能需求(所謂的互聯網三高),促使了很多非關系型數據應用和發展,如Key-Value數據庫(Redis、Oracle BDB等)、列存儲數據庫(HBase等)、文檔型數據庫(MongoDb等)、圖形數據庫(Infinite Graph、Neo4J等),各種非關系數據庫都在各自領域扮演極其重要的角色; 其中Redis成為Web2.0數據緩存的利器,同時也成為小伙伴們必知必會的技能。
初識Redis
什么是Redis?
Redis(Remote Dictionary Server ),即遠程字典服務,是一個開源的使用ANSI C語言編寫、支持網絡、可基於內存亦可持久化的日志型、Key-Value數據庫,並提供多種語言的API
百度百科
簡單的理解就是一個Key-Value數據庫,即字典形式存儲,歸類於NoSql(通常理解為“Not Only SQL”)數據庫;官網地址如下:
為什么要用Redis?
- 開源:除了使用沒障礙,開源會促進其發展;
- 快:操作數據快,性能高;
- 擴展性好:根據需要很容易進行擴展,集群、主從復制等;
- 比較活躍:文檔詳細,版本維護及時,社區討論都很活躍;
默認端口6379的背后故事
6379在是手機按鍵上MERZ對應的號碼,而MERZ取自意大利歌女Alessia Merz的名字;Redis 作者 Antirez 早年看電視節目,覺得 Merz 在節目中的一些話愚蠢可笑,Antirez 喜歡造“梗”用於平時和朋友們交流,於是造了一個詞 "MERZ",形容愚蠢,所以當要為Redis選擇一個數字端口的時候就使用6379(這個緣由不必抬杠,當做了解即可,畢竟不影響我們學習和使用)。
運行環境和版本
官方推薦在Linux環境中進行部署使用。
以上大概意思就是推薦使用Linux,對於Windows沒有提供官方支持;平時使用的Windows版本是微軟提供的,而且已經好久沒維護。
Redis 使用標准版本標記進行版本控制:major.minor.patchlevel(主版本.****次版本.優化版本)。偶數的版本號表示穩定的版本, 例如 1.2,2.0,2.2,2.4,2.6,2.8,奇數的版本號用來表示非標准版本,例如2.9.x是非穩定版本,它的穩定版本是3.0。
整理大概內容
概述->數據類型及應用場景->事務->配置文件詳解->持久化->發布訂閱->主從復制->哨兵模式->Lua腳本操作->布隆過濾器->其他擴展(緩存雪崩、穿透、數據一致性等)
Windows安裝
噗,說好的推薦Linux中運行的,好吧,我承認,這里要偷個懶,為了方便,接下來的學習打算在Windows進行,后續還是會切換到Linux的。當然,實際部署還是推薦Linux。
-
下載
windows下載地址:https://github.com/microsoftarchive/redis/releases/tag/win-3.2.100
-
拷到自己想放的文件夾,然后解壓;
-
先打開redis-server.exe,再打開redis-cli.exe,測試是否連接成功
安裝如此簡單,知道我偷懶的原因了吧,哈哈哈~~~Linux環境的安裝后續再補上。
最后
對於Redis的使用,存在以下公認現象:
- 所有開發者中,80%會用,20%還沒用過;
- 在使用過程中,80%只會string,20%應用熟練;
- 在熟練應用的開發者中,80%只會常規操作,20%高級應用;
當然,每個人都在進步,關注“Code綜藝圈”一起學習,我們一起努力成為最后一個20%的人。
一個被程序搞丑的帥小伙,關注"Code綜藝圈",識別關注跟我一起學~~~
擼文不易,莫要白瞟,三連走起~~~~