Time of Update: 2018-07-26
redis是一個nosql資料庫。這一系列部落客要是針對伺服器環境安裝時候遇到的問題。使用nosql資料庫可以提高資料的訪問效率。因為我的項目中用到了redis,而現在需要搭建一個測試環境,所以整理一下。 在centos上安裝redis可以通過直接通過命令列進行安裝,當然前提是可以聯入外網的。 redis安裝 安裝redis所需的必要包 yum install gcc
Time of Update: 2018-07-26
http://blog.csdn.net/pestd/article/details/7329664 1、redis-benchmark redis基準資訊,redis伺服器效能檢測 redis-benchmark -h localhost -p 6379 -c 100 -n 100000 100個並發串連,100000個請求,檢測host為localhost 連接埠為6379的redis伺服器效能
Time of Update: 2018-07-26
轉載自:http://www.redicecn.com/html/Linux/20131125/468.html Redis "MISCONF Redis is configured to save RDB snapshots, but is currently not able to persist on disk"問題的解決 今天第二次遇到Redis “MISCONF Redis is configured to save RDB snapshots, but
Time of Update: 2018-07-26
Redis是一個包含了很多Key-Value對的大字典,這個字典支援的Value非常豐富,可以為字串、雜湊表、列表、集合和有序集,基於這些類型豐富的value,擴充出了功能強大的操作,例如hmset、lpush、sadd等 1、字典 字典是Redis最基礎的資料結構,一個字典即一個DB,Redis支援多DB Redis字典採用Hash表實現,針對碰撞問題,其採用的方法為“鏈地址法”,即將多個雜湊值相同的節點串聯在一起, 從而解決衝突問題。
Time of Update: 2018-07-26
今天來聊聊什麼事nosql,一聽nosql也許很多人會覺得很高大上的感覺,但其實接觸過了也還覺得還行,隨著當今資料的瘋狂爆炸性的增長,傳統的RDBMS也越來越暴露出他的不足之處,所以,作為一名合格的程式員,有必要瞭解一下,近幾年新出現的nosql的概念,nosql可以理解為"not only sql",並不是說廢棄了Rdbms,而是一種補充吧.
Time of Update: 2018-07-26
如果啟動前不對linux核心做任何更改,那麼redis啟動會報出警告,共三個:如下圖所示 第一個警告:The TCP backlog setting of 511 cannot be enforced because /proc/sys/net/core/somaxconn is set to the lower value of 128. 意思是:TCP
Time of Update: 2018-07-26
Example //對 segmentation_object 這個字串加鎖ObjectLock objectSegmentationLock = new ObjectLock("segmentation_object");try { objectSegmentationLock.lock(); dosomething();} catch (Exception e) { e.printStackTrace();} finally {
Time of Update: 2018-07-26
實現事務的方法 multi(開啟事務)+exec(提交)+discard(放棄事務)+watch(CAS樂觀鎖) lua指令碼 Redis事務的特點 事務中的所有方法串列執行,執行過程不會被其它client打斷; 事務是原子的,命令全執行,或全不執行,但是,Redis的原子性和關聯式資料庫的原子性不一致,Redis雖然能保證命令全執行,但是如果某條命令在執行時出錯,Redis會忽略它,繼續執行下一條命令。 事務中的錯誤處理
Time of Update: 2018-07-26
一般的鎖只能針對單機下同一進程的多個線程,或單機的多個進程。多機情況下,對同一個資源訪問,需要對每台機器的訪問進程或線程加鎖,這便是分布式鎖。分布式鎖可以利用多機的共用快取(例如redis)實現。redis的命令文檔[1],實現及分析參考文檔[2]。 利用redis的get、setnx、getset、del四個命令可以實現基於redis的分布式鎖: get key:表示從redis中讀取一個key的value,如果key沒有對應的value,返回nil,如果儲存的值不是字串類型,
Time of Update: 2018-07-26
Redis鎖 Redis為單進程單線程模式,採用隊列模式將並發訪問變成串列訪問,且多用戶端對Redis的串連並不存在競爭關係。 SETNX命令(SET if Not eXists)文法: SETNX key value 若給定的 key 已經存在,則 SETNX 不做任何動作,並返回0。 安全性:保證互斥,在任何時候,只有一個用戶端可以持有鎖 無死結:即使當前持有鎖的用戶端崩潰或者從叢集中被分開了,其它用戶端最終總是能夠獲得鎖。 容錯性:只要大部分的
Time of Update: 2018-07-26
一、Mybatis的緩衝 通大多數ORM層架構一樣,Mybatis自然也提供了對一級緩衝和二級緩衝的支援。一下是一級緩衝和二級緩衝的作用於和定義。 1、一級緩衝是SqlSession層級的緩衝。在操作資料庫時需要構造 sqlSession對象,在對象中有一個(記憶體地區)資料結構(HashMap)用於儲存快取資料。不同的sqlSession之間的快取資料地區(HashMap)是互相不影響的。
Time of Update: 2018-07-26
Redis中資料存放區模式有2種:cache-only,persistence; cache-only即只做為“緩衝”服務,不持久資料,資料在服務終止後將消失,此模式下也將不存在“資料恢複”的手段,是一種安全性低/效率高/容易擴充的方式; persistence即為記憶體中的資料持久備份到磁碟檔案,在服務重啟後可以恢複,此模式下資料相對安全。 對於persistence持久化儲存,Redis提供了兩種持久化方法: Redis
Time of Update: 2018-07-26
訊息通知 任務隊列 使用任務隊列的好處 松耦合。生產者和消費者無需知道彼此的實現細節,只需要約定好任務的描述格式。這使得生產者和消費者可以由不同的團隊使用不同的程式設計語言編寫 易於擴充。消費者可以有多個,而且可以分布在不同的伺服器中, 藉此可以輕易地降低單台伺服器的負載 使用LPUSH和RPOP命令實現隊列, 這裡介紹一個新命令BRPOP和BLPOP BRPOP key [key ...] timeout(s)
Time of Update: 2018-07-26
四、清單類型 清單類型也是一個我們很長要用到的一個類型。比如我們發部落格,要用到部落格列表。如果沒有列表我們就只能遍曆鍵來擷取所有文章或一部分文章了,這個文法是keys,但是這個命令需要遍曆資料庫中的所有鍵,處於效能方面的考慮,在生產環境是不推薦使用的。
Time of Update: 2018-07-26
一.Redis事務 可以一次執行多個命令,本質是一組命令的集合。一個事務中所有的命令會被序列化,按順序的串列執行而不會被其他命令插入,不許加塞。 事務命令: discard 取消事務 exec 執行事務塊內的命令 multi 標記一個事務的開始 unwatch 取消watch命令對所有Key的監控 watch 監視一個或多個key,若在事務執行之前這些key被其他命令改動,那麼事務被打斷 標記一個事務的開始後,若其中一個命令插入隊列出錯,則事務中所有命令不會執行。
Time of Update: 2018-07-26
結構類型 結構儲存的值 結構的讀寫能力 string 可以使字串,整數,浮點數 對於整個字串或者字串其中的一部分執行操作;對整數和浮點數執行自增(increment)或者自減(decrement)操作 list 一個鏈表,鏈表上的每個節點都包含了一個字串
Time of Update: 2018-07-26
最近在讀黃健宏的《Redis設計與實現》,看完了第一部分,它是採用的自底向上的介紹方法。從最底層的資料結構開始,逐個介紹所用到的資料結構,最後形成資料庫。我準備做個redis的學習筆記,這裡我就自頂向下整理一下。 伺服器中的資料庫 redis伺服器將所有資料庫儲存在伺服器狀態redis.h/redisServer結構的db數組中,db數組中的每項都是一個redis.h/redisDb的結構體,每個redisDb結構就代表一個資料庫。 struct redisServer{
Time of Update: 2018-07-26
豐富的資料結構使得redis的設計非常的有趣。不像關係型資料庫那樣,DEV和DBA需要深度溝通,review每行sql語句,也不像memcached那樣,不需要DBA的參與。redis的DBA需要熟悉資料結構,並能瞭解使用情境。 下面舉一些常見適合kv資料庫的例子來談談索引值的設計,並與關係型資料庫做一個對比,發現關係型的不足之處。 使用者登入系統 記錄使用者登入資訊的一個系統, 我們簡化業務後只留下一張表。 關係型資料庫的設計
Time of Update: 2018-07-26
Windows下Redis安裝 下載windows版本redis或者github下載 解壓下載的壓縮包即為下圖的內容: 啟動的三種方式: 進入downloads檔案夾選擇需要的版本解壓進入檔案夾: 第一種方式不加設定檔方式: 雙擊redis-server.exe;或者在目前的目錄 ctrl+按一下滑鼠
Time of Update: 2018-07-26
redis是什麼 redis是一個開源的、使用C語言編寫的、支援網路互動的、可基於記憶體也可持久化的Key-Value資料庫。 redis的官網地址,非常好記,是redis.io。(特意查了一下,網域名稱尾碼io屬於國家網域名稱,是british Indian Ocean territory,即英屬印度洋地區)目前,Vmware在資助著redis項目的開發和維護。 Redis 是完全開源免費的,遵守BSD協議,是一個高效能的key-value資料庫。 Redis 與其他 key