我們將Node.JS與Redis結合使用,並且存在數據丟失問題。 我們有統計收集系統,所以我們必須收集每個處理到我們的服務器的請求。 對於高併發請求(平均1000 /秒),Redis中存在數據丟失問題。Redis數據丟失
我們記錄了Node.JS & Redis中的每個請求,問題是Node.JS顯示的請求數量與發送的請求數量完全相同,Redis Monitor調試的數量相同,但Redis DBSIZE向我們顯示的值不正確。它總是比預期的低40%-50%。
我們的服務器配置爲:
Intel® Core™ i7-920 24 GB DDR3 RAM From Hetzner
我們正在運行Debian擠壓,這裏是我們的sysctl:
net.ipv4.conf.all.rp_filter=1
net.ipv4.icmp_echo_ignore_broadcasts=1
net.core.somaxconn = 1280
fs.file-max = 50000
vm.overcommit_memory=1
我們的0.04 「平均負載」,和大量的空閒內存(〜 20GB)。
任何有關這個問題的幫助將不勝感激。
我想我發現Node.JS確實似乎是問題,或者更確切地說,Node.JS redis驅動程序node_redis。 的確我們已經轉移到了mysql內存,它給出了相當不錯的結果。 – Screatch 2012-03-03 10:51:17