【问题标题】:DryIoc, LightInject experiencesDryIoc、LightInject 体验
【发布时间】:2014-08-11 12:03:59
【问题描述】:

我想使用一些性能良好的 .NET IoC 容器。我阅读了this article 关于 IoC 容器性能的内容,而 DryIoc 和 LightInject 似乎是最好的。但是我没有找到他们的一些评论,尤其是一些实际使用的经验。

  • 您有使用 DryIoc 和 LightInject 的经验吗?
  • 对于性能敏感的项目,您会推荐哪种 IoC 容器?

【问题讨论】:

  • 我怀疑这个问题是主观的,不太适合 Stackoverflow。但请注意,对于大多数应用程序来说,DI 库的性能不是问题(瓶颈通常在 I/O 中)。我是Simple Injector 的创建者,在您链接到的文章中,Simple Injector 是最快容器的前 4 名。所以我想你可以相信我的话。即使性能很重要,在选择 DI 库时还有更多标准可供选择。
  • 我知道这可能是一个主观问题,但我要求的是具体的体验而不是感觉,所以这就是我冒险问的原因:) 谢谢你的建议,你的IoC 容器看起来不错且易于使用。我会看的。
  • 可能需要对“性能敏感项目”进行一些定义。所有项目都希望“快速”大多数项目在 IO 之外没有真正的性能问题。
  • 在提出具体建议并遵守特定的 IoC 容器之前,请先尝试一下,然后做出可能适合您需求的决定StructureMapSpring.Net

标签: c# .net dependency-injection ioc-container light-inject


【解决方案1】:

我决定在中型项目中使用 LightInject,我对所有功能、文档和支持都非常满意。我建议使用 LightInject。

【讨论】:

  • 我对这个话题感兴趣的原因与我正在考虑用实时交易应用程序中的 IoC 容器替换当前“穷人”的 DI 实现类似的原因。显然,在这种情况下,性能是绝对关键的。我也在看 DryIoc 和 LightInject。您的经历的任何进一步细节将是有益的。谢谢。
  • 嗨。你选择了哪个 IoC 容器?我没有对 LightInject 进行一些性能测试,但我在中等规模的项目中使用了它,它可以正常工作。主要是 CRUD 应用程序,读/写操作花费了大部分时间。也许这就是我没有看到性能问题的原因。我认为更换 IoC 容器没什么大不了的,尝试用 Lightinject 更换您当前的 IoC,您会看到。那么请给我写信。
【解决方案2】:

LightInject 不解析未在容器中注册的具体类。 您可以提供回退方法(RegisterFallback),但使用相同的容器解决其中的依赖关系会导致 StackOverflowException。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-06-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-16
    • 1970-01-01
    相关资源
    最近更新 更多