因果报应追踪报告:应该只使用redis或reds-mysql混合



背景:我正在构建一个web应用程序,该应用程序由一个工具和一个附带的报告系统组成,用于跟踪该工具的总体使用情况。我想显示基于每日使用量、每月使用量、年度使用量和总使用量的用户报告,所有这些都以分钟为单位。思考使用分钟数="因果报应"点数。

我正计划在redis中实现这种使用情况跟踪。现在我可以了

1) 同时递增多个计数器(每日、每月、每年)。

2) 我只能保留两组记录:

  • a) Total Karma(简单Redis计数器)

  • b) MySql中带有业力和日期的一行,并使用SQL查询生成年度业力和月度业力的报告。

示例b)的优点是它不会用大量非规范化的数据扰乱Redis。但是,如果在需要的时候将这些数据移植到MySQL是微不足道的,那么这可能不是一个缺点。有什么想法吗?

没有理由不能将redis用作主数据存储。但是,请记住以下几点:

  1. 你的工作集应该适合记忆。否则就会一团糟
  2. 您需要定期备份redis数据,并将其视为MySQL备份一样重要

如果你看到你的redis数据比一个实例增长得更大,我建议你考虑预硬化。

最新更新