3

我正在使用具有每个复杂业务逻辑的基于 SOA 的多层企业应用程序。许多业务验证需要来自数据库的大量支持数据,这会降低性能。并发用户数约为 1000。客户端是多层的,顶部是 WinForms。

我们正在考虑几乎所有的企业库块。

  • 缓存应用程序块
  • 数据访问应用程序块
  • 异常处理应用程序块
  • 记录应用程序块
  • 策略注入应用程序块
  • 安全应用程序块
  • Unity 应用程序块
  • 验证应用程序块

    1. 企业图书馆是正确的选择吗?
    2. 请建议您认为更好的库/框架,但请考虑说明它们更好。
    3. 将企业库与其他库混合使用会是不好的做法吗?例如,我们考虑使用 log4net 进行日志记录。
4

2 回答 2

5

在我看来,企业库所做的大多数事情都有更好的工具。

  • 数据访问块

    我承认自从我与 EntLib 在一个项目上合作以来已经有几年了,但我记得 Data 块提供的功能非常有限。像 NHibernate 或 Entity Framework 这样的全功能 ORM,甚至像 SubSonic 这样的查询工具都提供更多功能。我从事的每个项目都没有使用 NHibernate,我最终实现了我可以使用 NHiber “在盒子中免费”获得的功能。

  • 缓存应用程序块

    使用带有缓存的 ORM 将涵盖缓存块所做的大部分事情。

  • 异常处理块

    从这里开始有一些好主意,但这个概念可以大大改进。Rinat Abdullin 有一些关于利用动作策略进行异常处理的很好的入门信息。

  • 记录应用程序块

    使用 NLog 或 log4net。时期。如果您需要外观,请使用Simple Logging FacadeCommon.Logging。日志记录是一个非常有限且定义明确的组件。这些框架几乎相同且稳定。无需过于复杂。

  • 策略注入和统一块

    研究 DI/IoC 并选择一个。几乎不会出错。这是一个值得考虑的好清单

  • 安全和验证块

    在这一点上,我们已经为很多 EntLib 找到了更好的选择,将它作为支持安全或验证的依赖项引入感觉很沉重。同样,还有很多其他工具可以协助安全(Rhino Security)和验证(xValLokad

于 2010-11-04T19:33:05.093 回答
3

我已经使用企业库(旧版本)一段时间了,没有任何问题。

我认为使用一组有凝聚力的库而不是将库的拼凑工作(如果你要使用很多的话)肯定有一个优势。

我发现日志记录块非常好——它是高度可配置的,如果你使用得当,你将能够以极大的灵活性全面地记录日志。

于 2010-11-05T01:11:55.187 回答