這篇文章帶給大家的內容是關於Redis是什麼?有哪些應用場景?有一定的參考價值,有需要的朋友可以參考一下,希望對你有幫助。
一丶Redis介紹
Redis是一個開源的 key—value型 單執行緒 資料庫,支援string、list、set、zset和hash類型資料。
預設連接埠:6379
預設資料庫數量:16
#二、優點:
1.nosql資料庫沒有關聯關係,資料結構簡單,拓展表比較容易
2.nosql讀取速度快,對較大資料處理快
#三、適用場景:
1 .資料高併發的讀寫
2.海量資料的讀寫
對擴展性要求高的資料
四、不適場景:
1.需要事務支援(非關係型資料庫)
#2.基於sql結構化查詢儲存,關係複雜
#五、應用場景
下面這些作者是Redis作者@antirez,他描述了Redis比較適合的一些應用場景,NoSQLFan簡單列舉在這裡,供大家一覽:
例如典型的取你網站的最新文章,透過下面方式,我們可以將最新的5000條評論的ID放在Redis的List集合中,並將超出集合部分從資料庫取得
使用LPUSH latest.commentseddfa97ffc1dc71769e3f42e462dfe8e指令,向list集合插入資料
##插入完成後再用LTRIM latest.comments 0 5000命令使其永遠只保存最近5000個ID 然後我們在客戶端獲取某一頁評論時可以用下面的邏輯(偽代碼)
FUNCTION get_latest_comments(start,num_items): id_list = redis.lrange("latest.comments",start,start+num_items-1) IF id_list.length < num_items id_list = SQL_DB("SELECT ... ORDER BY time LIMIT ...") END RETURN id_list END
5.Uniq操作,取得某段時間所有資料排重值
這個使用Redis的set資料結構最適合了,只需要不斷地將資料丟到set就行了, set意為集合,所以會自動排重。 ######6.即時系統,###反垃圾系統#########透過上面說到的set功能,你可以知道一個終端使用者是否進行了某個操作,可以找到其操作的集合並進行分析統計對比等。沒有做不到,只有想不到。 ######7.Pub/Sub建構即時訊息系統######Redis的Pub/Sub系統可以建構即時的訊息系統,例如許多用Pub/Sub建構的即時聊天系統的例子。 ######8.建構###佇列系統#########使用list可以建構佇列系統,使用sorted set甚至可以建構###有優先權###的佇列系統。 ###以上是Redis是什麼?有哪些應用場景?的詳細內容。更多資訊請關注PHP中文網其他相關文章!