Нет, ответ на мой второй вопрос - не зима.
Предисловие:
Недавно я много изучал Entity Framework, и что-то, что меня беспокоит, - это его производительность, когда запросы не разогреваются, так называемые холодные запросы.
Я рассмотрел статью по соображениям производительности для Entity Framework 5.0. Авторы ввели понятие теплых и холодных запросов и то, как они отличаются, и я также заметил себя, не зная о своем существовании. Здесь, наверное, стоит упомянуть, что у меня есть только шесть месяцев опыта за моей спиной.
Теперь я знаю, какие темы я могу исследовать дополнительно, если я хочу лучше понять структуру с точки зрения производительности. К сожалению, большая часть информации в Интернете устарела или раздута с субъективностью, поэтому моя неспособность найти дополнительную информацию по теме "Теплый против холодных запросов".
В основном то, что я заметил до сих пор, заключается в том, что всякий раз, когда мне приходится перекомпилировать или перерабатывать хиты, мои первоначальные запросы становятся очень медленными. Любые последующие данные считаются быстрыми (субъективными), как и ожидалось.
Мы перейдем на Windows Server 2012, IIS8 и SQL Server 2012, а в качестве Junior я действительно получил возможность проверить их перед остальными. Я очень рад, что они представили модуль разминки, который подготовит мое приложение для этого первого запроса. Тем не менее, я не уверен, как продолжить разминку моей Entity Framework.
То, что я уже знаю, стоит делать:
- Создайте мои представления заранее, как было предложено.
- В конечном итоге переместите мои модели в отдельную сборку.
То, что я считаю делать, исходя из здравого смысла, возможно, ошибочного подхода:
- Выполнение фиктивных данных читается в приложении Start, чтобы разогревать, генерировать и проверять модели.
Вопросы:
- Каким будет наилучший подход к обеспечению высокой доступности моей Entity Framework в любое время?
- В каких случаях система Entity Framework снова становится "холодной"? (Перекомпиляция, переработка, перезапуск IIS и т.д.)