• Redis應用實踐

    3
    搜索引擎 Redis C/C++ Go 22839 次瀏覽

    唐福林是新浪微博開放平臺資深工程師,目前負責t.cn短鏈、用戶關系、計數器等底層服務。他曾負責過包括新浪郵箱全文搜索在內的多個基于 Lucene的垂直搜索引擎開發,以及新浪愛問和新浪播客的運維,對承載大數據量、高并發的互聯網基礎設施建設有豐富的經驗。他在QCon杭州2011大 會的開放平臺專題做了名為《新浪微博開放平臺中的Redis實踐》的講座,并和參會者做了熱烈的討論。會后,InfoQ中文站對唐福林做了采訪。

    InfoQ:新浪微博的業務場景對緩存和存儲提出了哪些要求?

    根據微博的業務特點,主要有這么一些要求:
    1.海量存儲;
    2.大量計算;
    3.對可靠性要求高;
    4.對速度要求高。

    InfoQ:Redis的主要優勢在哪里?適用哪些場景?

    主要優勢個人覺得有2點:
    1.豐富的數據結構;
    2.高速讀寫。
    所以適用于需要高速讀寫,而且需要比k-v更多的數據結構的地方。

    InfoQ:Redis有哪些不足?如何解決?

    持久化是Redis的一個軟肋,需要盡量避免。
    還有一個問題就是,Redis比較耗內存,尤其是數據量大的時候。而Redis又要求所有的數據必須都在內存里,這是一個矛盾,需要小心對待。

    InfoQ:Redis的調優存在哪些技巧?

    Redis從配置文件層面可以調的參數不多,只有hash-max-zip-size系列的參數調整可能對性能產生影響。如果想要達到特別的目標,那么就需要修改代碼行為。
    慶幸的是,Redis的代碼足夠簡單,二次開發定制都非常方便。

    InfoQ:Memcache和Redis是什么樣的關系?

    相輔相成吧。當前情況下,各有優缺點。不過個人覺得,長期看來,可以用Redis替代Memcache。

    InfoQ:能否總結下在應用Redis時的經驗教訓?

    主要有這么幾個:
    1. 決定使用 Redis 之前,做好容量規劃;
    2. 使用 Redis 的過程中,做好監控報警;
    3. 謹慎選擇持久化方案,對可能造成的高延遲要有心理準備;
    4. 小心Redis的內存碎片。

    InfoQ:新浪微博在Redis方面下一步有哪些計劃?

    主要是繼續推進RedisCounter的開發,還有一些存儲列表類數據的eRedis的定制開發。

    唐福林在QCon杭州2011大會上講座的幻燈片可以在此下載,演講視頻稍后會在InfoQ中文站發布。

    來自:http://www.infoq.com/cn/news/2011/11/tangfl-redis

    相似問題

    相關經驗

    相關資訊

    相關文檔

  • sesese色