我们将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