Большие Веб-сайты Интенсивного трафика используют ORMs?

Нажмите Ctrl + Высокий звук + F1 для переключения на основанную на тексте виртуальную консоль.

Подключили Вашу машину к Интернету через кабель Ethernet.

Входят в систему (Вы не будете видеть, что что-либо происходит на экране, поскольку Вы вводите в своем пароле, это в порядке), и выполните эти команды, путем ввода их и нажатия Входят :

sudo apt-get update
sudo apt-get -f install
sudo apt-get -y upgrade
sudo apt-get dist-upgrade
11
задан Martin B 22 September 2009 в 11:00
поделиться

6 ответов

В настоящее время выпущенная версия EF v1.0 в .NET 3.5 имеет ужасную производительность. Я провел обширное тестирование и несколько раз долго обсуждал эту тему с Microsoft по электронной почте более года назад, когда она была впервые выпущена. Текущая эффективность EF очень желательна и во многих случаях может генерировать совершенно ужасные SQL-запросы, снижающие вашу производительность.

Entity Framework v4.0 в .NET 4.0 НАМНОГО лучше. Они устранили большинство, если не все, проблем с генерацией SQL, которые преследуют EF v1.0 (включая проблемы, которые я представил им год назад). Будет ли EF v4.0 иметь лучшую производительность, еще предстоит увидеть. Он сложнее LINQ to SQL, так как обеспечивает гораздо большую гибкость. Поскольку окончательная версия еще не доступна, невозможно сказать, будет ли EF v4.0 самым быстрым или нет.

Объективный ответ на этот вопрос потребует объективного, беспристрастного сравнения между основными участниками ORM, такими как EF, LINQ to SQL, nHibernate (желательно с поставщиком LINQ), LLBLGen и даже некоторыми новичками, такими как Telerik. ORM, Subsonic и т. Д.

Что касается крупномасштабных систем массового производства, которые используют ORM. Я бы посоветовал взглянуть на сам StackOverflow.com, который использует LINQ to SQL. SO стала одним из, если не , , топ-сообществом программистов в Интернете. Здесь определенно большой объем, и этот сайт прекрасно работает. Что касается других сайтов, я не могу сказать. Детали внутренней реализации большинства основных веб-приложений обычно остаются загадкой. Большинство известных мне применений ORM также относятся к внутренним корпоративным системам. Финансовые системы, здравоохранение и др. Объектные базы данных также используются в тех же типах систем, но гораздо реже. Я бы сделал несколько поисков для использования ORM и веб-сайтов с большим объемом.

Одна вещь, на которую следует обратить внимание при поиске. Убедитесь, что найденные вами отзывы актуальны. Сцена ORM сильно изменилась за последние два года. Производительность, эффективность, возможности, возможность настройки РСУБД динамического SQL и т. Д. Значительно улучшились с тех пор, как около десяти лет назад впервые были созданы ORM.

13
ответ дан 3 December 2019 в 02:30
поделиться

Джриста правы. Я просто хочу добавить, что вам следует серьезно подумать о LINQ to SQL. И с точки зрения простоты, и с точки зрения производительности это лучшая технология (на данный момент). Он очень быстрый и достаточно функциональный прямо из коробки. Если вы хотите еще больше улучшить LINQ to SQL, ознакомьтесь с платформой PLINQO .

PLINQO - это платформа, которая основана на стандартном LINQ to SQL и добавляет массу функций, включая некоторые очень элегантные массовые операции и функции кэширования. Лучше всего PLINQO адаптируется к изменениям в схеме вашей базы данных, но сохраняет ваш собственный код. Что ОЧЕНЬ гладко и, на мой взгляд, наиболее ценно.

4
ответ дан 3 December 2019 в 02:30
поделиться

Я знаю, что в одном из подкастов Джефф упомянул, что stackoverflow использует Linq-to-SQL

6
ответ дан 3 December 2019 в 02:30
поделиться

Несмотря на то, что напрямую не указывается, какая ORM работает быстрее, как указывает Айенде (автор NHibernate), может быть очень легко сделать что-то неправильно или, по крайней мере, наклонить так, как вы этого хотите, Вот приложения, которые используют ORMS как часть своих приложений.

Twitter (был?) использует Ruby on Rails (RoR), который использует ORM. 37 signal ребята используют RoR для своих приложений .... Я знаю, что это не .Net, но, как упоминал Куосон, L2S используется SO, и есть много людей, использующих NHibernate, например Джеффри Палермо и Хэдспринг. Я не удивлюсь, если обнаружу, что многие недавно разработанные веб-приложения используют ORM.

Даже если ORM действительно снижает производительность, большинство ORM позволяют настраивать используемый SQL, когда это необходимо. Большинство предлагает использовать ORM, а затем устранять узкие места по мере их возникновения. Кроме того, хорошая ORM решает так много за вас, что написание собственного DAL в наши дни становится все труднее.

2
ответ дан 3 December 2019 в 02:30
поделиться

Конечно, Reddit использует части SQLAlchemy (по неизвестным причинам я считаю, что они переписали большую часть его: /). Большинство, если не все крупные веб-сайты Django используют ORM (включая бывшие Pownce и Curse).

1
ответ дан 3 December 2019 в 02:30
поделиться

действительно веб-сайты с высокой посещаемостью фактически полностью отходят от баз данных SQL, потому что с тяжелыми рабочими нагрузками на запись, обычными для современных приложений, почти невозможно заставить их масштабироваться больше одного машина, ORM или без ORM. Это было названо «движением NoSQL »

Однако, хотя это очень модная тема, она совершенно неактуальна для сайтов, на которых нет тысяч активных одновременных пользователей. И беспокойство по поводу производительности ORM - это то же самое: большинство сайтов на самом деле не обладают «высоким трафиком», чтобы ORM превратился в проблему (если только он не реализован или не применяется грубо неправильно).

6
ответ дан 3 December 2019 в 02:30
поделиться
Другие вопросы по тегам:

Похожие вопросы: