我有几组数据可供现场所有用户使用。我传统上会考虑缓存这些。
我当前的 EF 设置使用 uow 和存储库模式,因此我倾向于将上下文用于单个事务并处理它。
我计划引入一些用户交互,因此曾经完全静态的数据将不再允许用户添加、删除和编辑。我估计数据仍然只会每 2 分钟左右刷新一次,这仍然是缓存的合理候选者。
一种选择是保留缓存的想法,但在每次更改后检索和重新缓存。最大的数据集将有大约 5-10k 行。
我想到的另一个选择是为每个我保持打开(静态)的数据集设置一个上下文,并以这种方式管理数据。我对 EF 很陌生,所以我不确定这是一个好主意还是坏主意,但从表面上看,它似乎类似于缓存的工作方式。我唯一不确定的是如何处理额外的表数据,因为我相信您无法跟踪和使用 Include()。
有人对此有建议吗?