简介:
我在后端有一个复杂且持久的查询,将数据反馈到前端的Angular应用程序中。
目前,Angular应用程序使用后端缓存的数据而不是直接从复杂查询中读取数据,因为这需要几分钟时间。缓存每天早上和晚上都会变暖。
随着用户更改UI并保存数据,数据被传递到服务器端并保存到数据库中。此时UI是最新的,直到用户刷新页面。同时,数据库是最新的,但缓存已经过期。
因此,当用户刷新页面时,页面上显示的是过期的缓存值。
更多信息:
现在我正在考虑刷新缓存的方法,欢迎更有经验的人提供任何建议。
我的想法是通过缓存作业(一次一个),在用户保存内容后立即排队。作业将具有更改的相关信息,不必重新计算整个缓存,而只需更改的部分。
问题部分:
如果用户刷新页面,我可以使用什么技术使用户始终了解数据?我应该在客户端以indexedDB或localstorage的形式保存“增量”,同时将数据发送到服务器。因此,当页面刷新时,用户从localstorage或indexed db中读取数据。
我仍在思考这个问题,显然我没有太多经验,对我所采取的方向有何评论?
基本上,我可以更改任何东西,包括后端/前端/缓存,它仍处于POC阶段,我只是尽可能了解其他人的工作情况。
更新
更多背景。我正在处理类似索引的页面,因此有多个记录可以进行内联编辑。
此外,在将扁平数据库记录转储到地图结构中并以json的形式传递到前端之前,我正在对后端进行一些转换。