我有一个项目,我需要提供统计信息通过api的外部服务。在上述服务中,我只使用Kafka作为“存储”。当应用程序启动时,它从集群读取事件1周,并计算一些值。并积极听取新的事件更新信息。例如,信息是“多少次x项目被出售”等应用程序的启动需要很多时间,并带来了一些其他问题。这是一个kubernetes服务和准备就绪探测器失败的时候,有时阅读过去1周的事件需要很多时间。我想到了两个替代方案来取代整个逻辑:
kafka流或ksql(我不确定我是否需要相同数量的内存和计算单元)
缓存数据库
我在想这里哪个主意更好?还是有比他们更好的主意?
1条答案
按热度按时间ezykj2lf1#
首先,我希望这是一个压缩的主题,你正在阅读,否则,你的“x时代”将是误导性的数据被删除的主题。
您选择的任何选项都需要从主题的开头开始阅读,因此解决方案将归结为启动一个持久的使用者:
将数据存储在rocksdb中的磁盘上(如kafka流或ksql ktable)
你可以选择其他数据库。redis是个不错的选择,但是如果你想使用memcached,couchbase也是