【问题标题】:What cache concurrency strategy should be used for @ManyToOne fields@ManyToOne 字段应该使用什么缓存并发策略
【发布时间】:2010-06-17 12:44:43
【问题描述】:

应该为特定实体类的@ManyToOne 字段使用什么缓存并发策略。使用 READ_ONLY 而不是 READ_WRITE 是否有意义,因为这些字段通常在实体创建后不会更改

@ManyToOne(fetch = FetchType.LAZY)
@Cache(usage = CacheConcurrencyStrategy.READ_WRITE)
...
private User user;

【问题讨论】:

  • 满足您需求的那一款!

标签: hibernate caching jpa ehcache


【解决方案1】:

如果这些字段“通常不会更改”而不是“从不更改”,则 READ_ONLY 不是一个选项。其他缓存并发策略在数据库吞吐量和事务完整性之间提供了不同的权衡。具体选择取决于您的具体情况和要求。

【讨论】:

  • 这些字段的主键id肯定不会变,但内容可能会变。但是没有一个 UI 页面显示来自这些字段的信息(即它们主要存在只是因为外键约束)。那么 READ_ONLY 会是一个不错的选择吗?
  • 如果应用程序运行时数据不能改变,READ_ONLY 应该没问题。否则,我建议使用 READ_WRITE 或其他方式。
猜你喜欢
  • 2020-05-08
  • 2013-06-09
  • 1970-01-01
  • 2010-09-11
  • 2012-03-07
  • 1970-01-01
  • 1970-01-01
  • 2018-06-30
  • 2010-11-21
相关资源
最近更新 更多