DryIoc, опыт LightInject

Я хотел бы использовать контейнер .NET IoC с хорошими результатами производительности. Я прочитал эту статью о контейнерах IoC. производительность, а DryIoc и LightInject кажутся лучшими. Но каких-то отзывов о них, особенно какого-то опыта реального использования, я не нашел.

  • У вас есть опыт работы с DryIoc и LightInject?
  • Какой контейнер IoC вы бы порекомендовали для проекта, чувствительного к производительности?

person Jozef Cechovsky    schedule 11.08.2014    source источник
comment
Я подозреваю, что этот вопрос субъективен и не очень подходит для Stackoverflow. Но обратите внимание, что для большинства приложений производительность вашей библиотеки DI не является проблемой (узким местом обычно является ввод-вывод). Я создатель Simple Injector, и Simple Injector входит в четверку самых быстрых контейнеров в статье, на которую вы ссылаетесь. Так что, я думаю, вы можете поверить мне на слово. И даже если производительность важна, существует множество других критериев при выборе библиотеки DI.   -  person Steven    schedule 11.08.2014
comment
Я знаю, что это, возможно, субъективный вопрос, но я прошу о конкретном опыте, а не о чувстве, поэтому я рискнул спросить :) Спасибо за ваше предложение, ваш контейнер IoC выглядит красивым и простым в использовании. . Я посмотрю на это.   -  person Jozef Cechovsky    schedule 11.08.2014
comment
Вероятно, необходимо некоторое определение проекта, чувствительного к производительности. Все проекты хотят работать быстро, у большинства проектов нет реальных проблем с производительностью, кроме ввода-вывода.   -  person Chris Marisic    schedule 13.04.2015
comment
Прежде чем вносить конкретные предложения и придерживаться определенного контейнера IoC, попробуйте следующее и примите решение, которое потенциально соответствует вашим потребностям Карта структуры Spring.Net   -  person Nandha Kumar    schedule 15.04.2015


Ответы (2)


Я решил использовать LightInject в проекте среднего размера и был очень доволен всеми функциями, документацией и поддержкой. Я рекомендую использовать LightInject.

person Jozef Cechovsky    schedule 16.04.2015
comment
Я заинтересован в этой теме по тем же причинам, поскольку я рассматриваю возможность замены текущей реализации DI для бедняков контейнером IoC в приложении для торговли в реальном времени. Очевидно, что в таком контексте производительность абсолютно критична. Я тоже смотрел на DryIoc и LightInject. Любая дополнительная информация о вашем опыте будет полезной. Спасибо. - person 0b101010; 29.05.2015
comment
Привет. И какой контейнер IoC вы выбрали? Я не проводил каких-либо тестов производительности LightInject, но я использовал его в проекте среднего размера, и он работает без проблем. В основном это было приложение CRUD, и операции чтения/записи занимали большую часть времени. Может быть, поэтому я не видел проблем с производительностью. Я думаю, что замена контейнера IoC не имеет большого значения, попробуйте заменить текущий IoC на Lightinject, и вы увидите. Напишите мне пожалуйста информацию тогда. - person Jozef Cechovsky; 01.06.2015

LightInject не разрешает конкретные классы, которые не были зарегистрированы в контейнере. Вы можете предоставить резервный метод (RegisterFallback), но разрешение зависимости в нем с использованием того же контейнера вызывает StackOverflowException.

person Nogard    schedule 25.05.2016