【发布时间】:2016-01-19 14:55:10
【问题描述】:
我有一个 Spring Boot 服务器应用程序。该服务器的客户端一直要求有关不同事物的统计信息。这些统计数据可以在客户端之间共享,并且不能是实时的。
如果这些统计信息每 15-30 分钟刷新一次就足够了。
此外,计算这些统计数据需要读取整个数据库。
所以,我想缓存这些计算出的统计数据并不时更新它们。
您有什么建议,我应该使用什么工具或模式?
到目前为止,我有以下想法:
升级到具有 JSON 存储的 MySQL 5.7,并将数据存储在那里
请记住,我的服务器硬件不是太强大:512MB RAM 和 1 个 CPU(DigitalOcean 中最便宜的选项)。
提前谢谢你!
编辑1:
这些统计数据由非常简单的数据结构组成:int 到 int 映射、列表等,它们不适合关系数据库。
编辑 2:
整个数据只有几兆字节。关键点是创建这些数据需要大量的数据库读取,并且很多客户都要求这样做。 我还想让我的服务器应用程序保持无状态。我认为这很重要。
【问题讨论】:
-
如果您要随时保存统计数据(随着数据的变化,stuff 的发生)。关键指标,不是一切。
-
@Drew 这也是一个选项,但我应该如何存储它,以及存储在哪里?
-
我们甚至不知道它是什么。分享您想要的任何内容,或将内容更改为我们可以击败的稻草人。我很乐意提供一些建议
-
我编辑了这个问题。有帮助吗?
-
在下面question这位绅士展示了一张桌子,并谈到了他的
pv_name和value专栏。我会用 pv_names 的指标表(尽管很大)来回答这个问题。他的指标可以随时可用而无需计算。他有相当限制性的问题。所有的问题都不一样。大多数 OP 只是丢球,从不继续提供良好的反馈。所以我们消失在下一个问题上,或者看 Netflix
标签: mysql spring caching memcached