Какая ORM имеет лучшую производительность!! OpenAccess или LLBLGen Pro?

Я сейчас работаю над новым проектом и думаю об использовании ORM помимо OpenAccess, LLBLGen Pro или Subsonic. Этот проект может иметь большое количество одновременных обращений, поэтому наши требования к производительности очень высоки.

Пожалуйста, сравните и порекомендуйте это мне. Спасибо

Джим.

1 ответ

Решение

Джим,

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

Тем не менее, мы используем LLBLGen для высокопроизводительных веб-приложений, и производительность является исключительной. Мы обнаружили, что большая проблема заключается в самом дизайне приложения. Используя SQL Server Profiler, мы можем видеть (во время разработки), какие части приложения создают много попаданий в базу данных. Самое большое наказание, которое мы нашли, было с загрузкой сетки и затем выполнением другой операции с базой данных события OnDataBinding / DataBound. Это создает огромный объем трафика к базе данных SQL Server, большое количество операций чтения и большого объема подкачки дисков. Мы очень хорошо справились, убедившись в том, что получили все данные в первом запросе, сделав хороший выбор дизайна при создании набора данных / объединений / и т. Д. при создании приложения - или рефакторинг позже, когда мы обнаружим, что производительность низкая.

Затраты LLBLGen, по крайней мере, очень минимальны. Это быстро даже при создании огромного количества объектов. Гораздо больший прирост производительности происходит, когда мы создаем запросы, которые порождают другие запросы (пример выше), и наши чтения из БД проходят через крышу.

Вы можете оценить, какой из них, по вашему мнению, лучше подходит для ваших навыков и производительности.

Другие вопросы по тегам