Saas 结构的 CRM 系统,采用最省成本也最复杂的单库单表行级限制租户隔离手段(这玩意差点没搞死人),springboot+mysql
统计每个销售的客户的跟进,交易等一大堆数据,并且可以筛选年月日的统计数据,前端展示图表和数字
方案 1: 使用定时任务,每隔一段时间去统计用户这段时间内的情况,并写入数据库
我想到的是一个用户 1 条记录,也就是每天只新增 1 条统计记录,写入新的统计数据时判断今天有无记录,有的话将直接统计好的数据更新到这条记录,否则新建一条,今天这样做的好处就是不会产生大量的记录,但无法统计到时分秒的数据,但按照需求是不需要,只需到日
方案 2: 查询的时候直接去统计每张表的数据并塞到 redis 里,然后设置过期时间,下次查询就查询缓存,没有则去统计每张表的数据
本人菜鸟一个,开发经验少,麻烦做过类似开发的大牛给个好一点的解决方案,系统用户以后会越来越多,并且是多租户的,所以很麻烦,我还在想要不要将统计数据放到其他类型数据库里
1
huangsen365 2021-04-19 19:29:26 +08:00 via iPhone
不差钱的话 直接用 微软的 powerbi
|
2
zifangsky 2021-04-19 19:41:21 +08:00
一般报表统计之类的需求,都建议单独建立相应的统计表,然后通过定时任务在每天半夜对前一天的数据做预统计,真正展示给页面的数据从那个预统计的表中查出来做最终跟具体业务相关的统计计算
|