【发布时间】:2014-11-11 21:23:08
【问题描述】:
我面临以下情况:
我正在开发的系统有几个不同的部分(服务和 ASP.net),各自负责。这些部分由 2 个资源组合在一起:MSSQL-DB 和 windows 文件系统上的文件。
目前所有这些部分都单独访问这些资源。我认为这会导致不可预测性和不一致。
我正在考虑引入一项服务来规范对这些资源的访问。我不确定这是否是公认的设计原则。
一般问题是:
我应该考虑什么样的解决方案,在设计时应该注意什么?
具体问题:
这只是一个数据访问层吗?
引入这样的 SPOF 是不是很糟糕?
您能推荐任何针对这种解决方案的阅读材料吗? (特别是如果有 C# 的特定材料)
因为 allen-smithee 提出的一个好问题而编辑:
数据库当前由嵌入式查询访问。它们被分离到一个类中,但每个服务都不同,因此它不是共享库。
【问题讨论】:
-
您所说的“不可预测性和不一致”具体是什么意思?系统是否遇到实际的数据不一致问题和竞争条件?您的服务当前如何访问数据库 - 嵌入式 SQL 查询、ORM 或存储过程?
-
@allen-smithee 谢谢,这些都是很好的问题。是的,DB 和比赛条件的不一致是一个问题。死锁很多。目前他们正在使用嵌入式 SQL 查询。我宁愿不使用存储过程来解决这个问题。我喜欢在主存储库中管理我的查询。
标签: c# database architecture