回覆列表
  • 1 # 晚安

    redis的值有5種類型,不同的型別有不同的命令來獲取:

    字元直接 get key

    佇列 左端彈出一個元素 LPOP key

    雜湊 HGET key field

    集合 SMEMBERS key 返回集合中的所有元素

    有序集合ZRANGE key start stop

    更詳細的命令可以檢視redis常用命令。

  • 2 # 蓮花童子哪吒

    Redis作為高效能的非關係資料庫,在目前主流的網站都是非常廣泛的應用。讀寫效率可達8-10w/s。一般作為快取資料庫,都是載入網站的一些熱點性質額資料,而不是把快取當做資料庫來使用。

    只有找到的是網站中的熱點資料,才能夠把Redis的效能發揮到極致,一般查詢快取的熱點的key,常用的方式分為客戶端的和我們服務的兩大類。

    客戶端

    1、客戶端其實是距離key”最近”的地方,因為操作的Redis的命令就是客戶端發出的。例如客戶端設傳送操作key命令的時候,把呼叫的key和呼叫的次數記錄到日誌裡面進行統計,然後再服務端進行日誌分析的統計,得到熱點的key值,這樣就在Redis快取key的時候就可用統計出來的熱點資料來操作。

    2、憑藉經驗,進行預估,每一個網站在開始執行的時候都會存在熱點場景,或者說訪問的頻率在非常高場景下,比如說像微博的熱搜榜、商城裡面活動促銷商品,那這些就是我們可以提前將Key作為熱點Key進行儲存

    3、採用抓包工具進行評估:Redis使用TCP協議與客戶端進行通訊,存在網路上面的通訊,這時候就可以基於抓包工具去分析網路所攜帶的key的資料,然後做好訪問key頻率統計。通訊協議採用的是RESP。

    例如:tcpdump、Wireshark等工具

    注:RESP(REdis Serialization Protocol, redis序列化協議)協議與Redis伺服器互動。RESP是序列化資料之後,在建立在TCP通道上進行傳輸服務端

    1、使用monitor命令統計熱點key可以記錄redis的所有操作命令,記錄並分析monitor日誌得到key的訪問頻率。(monitor可能會造成效能問題,所以要選擇好時機)

    2、採用第三方開源專案,如facebook開源專案redis-faina,獲取最近操作命令的熱點key、熱點命令、耗時分佈等資料。為了減少網路開銷以及加快輸出緩衝區的消費速度,monitor要儘可能在本機執行。

  • 中秋節和大豐收的關聯?
  • 經期量大還有血塊能喝紅棗紅糖水嗎?