业务背景
目前在个人的网站和小程序中上线了文章模块,于是想在网站的功能集锦模块中将每日文章访问的实时数据进行展示,
由于当作一个小的功能集成到网站中,所以并没有使用太多的中间件,
只是单纯的在拦截器那里加一些逻辑将文章访问数据存入到内存中(并不是Redis),然后提供接口将数据在页面上进行展示。
于是就出现了一个问题,由于是小功能嵌入到网站上,更改重启很频繁,导致每次重启今日文章数据都会丢失,
最终想到利用Spark来恢复每日数据。
呈现效果
网址:www.study-java.cn
微信小程序:每天学Java
解决过程
1.在存入内存前,将访问数据存入日志中记录下来。
2.启动项目过程中,利用Spark解析日志,恢复日志数据。
实现代码
Order配合ApplicationRunner代表启动执行run方法。
@Component@Order(3)public class AnalysedArticle implements ApplicationRunner, Serial