Dict.CN 在線詞典, 英語學習, 在線翻譯

          都市淘沙者

          荔枝FM Everyone can be host

          導航

          <2025年6月>
          25262728293031
          1234567
          891011121314
          15161718192021
          22232425262728
          293012345

          公告


          我的blog中的部分資源是來自于網絡上,如果你認為侵犯了你的權利,請及時聯系jelver#163.com,我會盡快刪除!另外如果要留言最好通過郵件的形式跟我交流因為我不是很經常寫文章,前面有的朋友留言好久了我才發現,所以對不住大家,現在留下MSN:jelver#163.com和QQ:253840881,歡迎交流! (用@代替#)

          隨筆分類

          文章分類

          隨筆檔案

          文章檔案

          相冊

          統計

          留言簿(23)

          積分與排名

          優秀學習網站

          友情連接

          閱讀排行榜

          評論排行榜

          redis list應用–大型網站緩沖隊列服務器【轉】

          redis list應用–大型網站緩沖隊列服務器

          1. 起因, 隨著twitter sina微博,騰訊微博的開放平臺相繼推出, 大部分和互聯網相關的公司又多了一個營銷的手段:信息同步。也即是用戶把自己的新浪微博賬號或者騰訊微博賬號和你的網站關聯起來了,用戶在你的網站產生的 任何信息都可以同步發送到sina微博,qq微博上去(前提是經過用戶的允許,這樣用戶既可以不需要同樣的信息復制到多個網站, 又可以相應的推廣你的網站的入口曝光率)。目前同步比較好的例子是:微博通,街旁,切客等。

          2. 為什么要用緩沖隊列服務,我們舉個例子。如果你做了一個網站,用戶在你的網站上關聯了sina微博,QQ微博,開心網,人人網, 豆瓣,twitter, facebook(可能還要在國外設置代理)等等第三方平臺,用戶產生了一個動作后(比如發了一條心情狀態),你的網站要同時同步到這些網站去,每個第三 方平臺都要經過多次外網http請求,所有的這些請求加起來是可能是很長的時間(幾秒, 甚至幾十秒),這對于前段用戶肯定肯定是無法忍受的。所以這個時候同步信息的話必須采取異步的方式,也就是用戶在你的網站發表一個狀態服務端只是把這條狀 體對應的信息存儲起來, 然后就提示用戶發表成功, 具體的信息同步是后端以腳本的方式異步運行的。用戶通俗的話來說就是用戶先發表后同步,由于校本執行速度很快, 用戶幾乎感覺不出來同步的時間差。你也許會問我怎么知道哪些信息要同步到第三方平臺去呢,這也就是使用redis使用緩沖隊列服務器的原因,當用戶發表信 息后,我們同事把信息寫入緩沖隊列服務器,后臺腳本會不停的去檢查緩沖隊列服務器是否有數據,如果有數據則取出發送到第三方開放平臺。

          3. 系統擴展性
          a). 如果腳本處理過慢,可能造成緩沖隊列擁堵,我們可能通過擴展后臺腳本個數來加快同步到第三方平臺的處理速度。
          b). 如果需要同步的信息量過大, 造成寫入隊列的并發數極大,肯能通過擴展隊列服務來達到分散減壓的目的(基本不會出現)。

          5. 效率如何 假設你的網站每天產生100W條信息 需要同步到第三方平臺。
          redis官方測試數據(SET操作每秒鐘 110000 次,GET操作每秒鐘 81000 次)。
          一個腳本每天的同步量, 86400/2 = 43200, (假設平均每同步一條信息花費時間為2s,) 一個腳本每天大概可以同步4W條數據。
          平均每秒同步的數據 100W/86400 < 12個 高峰時期擴大十倍也就是每秒 120條信息。由此可見每天100W 甚至 1000W的信息同步量對redis來說都是沒有任何壓力的。
          我們只需要加快腳本處理的速度即可, 100W數據只需要同事25個腳本負責同步即可,(數據量增加了,擴展起來非常方面)。

          總結,此方式已經應用于國內某LBS社區,每天的PV大概300W,產生的信息同步量每天大概2W左右。當前是2個腳本負責同步相關操作,隊列里面基本沒有任何擁堵信息。

          posted on 2012-06-05 16:47 都市淘沙者 閱讀(2767) 評論(0)  編輯  收藏 所屬分類: Ecache/Memcached/XCache

          主站蜘蛛池模板: 南宫市| 芷江| 大冶市| 三都| 邛崃市| 五大连池市| 伽师县| 务川| 临邑县| 建湖县| 方城县| 内丘县| 霍州市| 汉沽区| 公安县| 浦江县| 罗田县| 开封市| 济阳县| 阿拉善右旗| 大冶市| 固镇县| 凤凰县| 祁门县| 班玛县| 汝阳县| 崇文区| 获嘉县| 香港| 丰原市| 元阳县| 嘉善县| 罗平县| 长海县| 石城县| 邻水| 盐池县| 新宾| 怀仁县| 榆社县| 鄂尔多斯市|