静态:创建文档评级解决方案(Redis / Rails / NodeJS?)

时间:2013-06-08 17:01:39

标签: ruby-on-rails node.js static redis middleman

我正在构建一个包含10000多个页面的静态网站,该json文件由middleman生成。

每个页面都是一个文档(pdf),其中包含自己的ID,摘要和下载链接。

我需要为匿名用户提供评估文档和显示每个文档的全局评级的能力。

由于网站是静态的,我一直在寻找像disqus这样的解决方案来处理页面评级和通过api获取计数的能力。我没找到。

假设我必须创建一个处理评级的单独服务器。我应该使用哪种技术?我想到了Redis,但最大的问题是,如果访问者创建了一个脚本,可以对文档进行数百万次上下调整。我怎样才能确保没有洪水?

我知道captcha,但在这种情况下会有效吗?

还有其他解决方案吗?

所以这是我的问题:

  1. Redis是正确的选择吗?
  2. NodeJS/Rails?我对Rails非常满意,但NodeJS更快?
  3. captcha是否足以确定没有(最小)洪水?其他解决方案?
  4. 谢谢。

1 个答案:

答案 0 :(得分:1)

  1. Redis是一个很棒的解决方案。您可以使用redis功能存储每个给定的评级,并使用另一个键来存储计算的评级以便轻松获取
  2. 如果您熟悉Javascript,那么Node JS是一个有趣的选择。如果你对红宝石更熟悉--Sinatra就可以做到这一点。
  3. 至于验证码解决方案 - 让不会让用户充斥您的评级队列是PITA。你应该只允许注册/登录的用户进行评级 - 并且只有在成功下载请求之后才能进行评分。在这种情况下 - 验证码就可以了。