DDD实体获得对DAO的访问权限

时间:2014-11-26 12:34:43

标签: java oop domain-driven-design

我创建了一个域驱动设计域模型,但遇到状态问题。我需要能够通过创建多个实例来扩展我的应用程序,因此(在某些情况下,并非所有情况下)都无法在我的模型中保持状态。似乎应该通过模型检索状态,因此我希望有一些方法可以从我的模型中查询数据库(通过服务,dao),以确保状态在所有实例之间同步。

是否有人知道这种可接受的方式,或者无状态应用是否适合DDD?

干杯

1 个答案:

答案 0 :(得分:0)

无状态应用是首选方式

使用以下技术之一保持/检索状态是可以接受的:

  1. 如果你有(或可以拥有)其中一个内存缓存服务,例如 memcached或者像HazelCast这样的内存数据网格,您可以使用它们来存储状态。任何实例都可以根据其中一个商店中的某个唯一clientId或sessionId来保存/恢复状态。
  2. 在数据库中。
  3. 这对于REST客户端是不可能的,但为了完整性:对于UI 客户端,您可以从HTTP cookie中检索状态,从而将保持状态的负担传递给客户端。
  4. 这当然不是一个全面的清单,而是一系列常用技术。