我需要一些建议:
我正在开发一个rails应用程序,其中多个用户单击按钮。我需要知道点击按钮的次数,并在点击量达到一定数量时禁用按钮。
什么更好?
修改
每个用户可以无限次点击该按钮,我需要知道哪个用户导致该按钮被禁用。
我原来的想法是一个包含4列的表:title
goal
user_id
current_number
并且每次只增加current_number
并存储使该数字达到目标的用户的用户ID。
答案 0 :(得分:0)
你的第一个解决方案似乎是合适的,我看到的唯一缺点是,一旦达到了点击的目标,你的current_number
字段变得多余但我没有真正看到任何解决方法,而不会使你的应用程序过于复杂
我认为你可以扩展的唯一可能是将某种背景排队系统与redis后端结合起来,例如Resque或Sidekiq。如果性能是一个问题,我只会看不起这条道路。
您可以在github上查看recommendable存储库,了解使用后台处理的类似实现。 Redis的。