通过计数器,它可能是网页浏览量,下载量,投票数等。基本上,不是非常“关键”的数据。
存储这些信息的“最佳”方式是什么? Mysql不是一个好选择。你们用的是什么?
答案 0 :(得分:10)
我想我会选择Redis,因为:
答案 1 :(得分:9)
如果您要存储以下内容:
{ "url" : "www.example.com", "pageviews" : 0 }
您可以使用原子操作$ inc:
以原子方式快速增加网页浏览量db.downloads.update({'url' : 'www.example.com'}, {'$inc' : {pageviews : 1}})
如果使用upsert,则在更新文档之前不必检查文档是否存在。例如,如果你说:
db.downloads.update({'url' : 'www.example.com'}, {'$inc' : {pageviews : 1}}, {"upsert" : true})
如果文档不存在(页面视图设置为1),则会创建包含www.example.com网址的文档,如果确实存在,则会增加网页浏览量。这意味着您不必担心预先填充集合。
答案 2 :(得分:1)
20世纪90年代着名的观察计数器使用简单的文件存储数字。如果您只需要存储一个数字,那么任何事情都足够好。
答案 3 :(得分:-1)
我认为APC或memcached是不错的选择。