2010-08-06 5 views
1

Я заметил, как мой сайт становится все больше и больше, время, которое мой ноутбук берет для отображения моей страницы, намного дольше, чем другие новые проекты с минимальными ссылками.Внешние ссылки замедляют мое приложение ASP.NET? (VS: Добавить ссылку)

Я думаю, что есть две переменные в игре, которые влияют на ASP.NET время прогрева:

  • Количество внешних ссылок
  • Время, необходимое для рабочего процесса в new() до каждого экземпляра в рабочий процесс
  • Дополнительное время для ФОС объектов как ServiceHost может быть во внешнем DLL

во-первых, это те правильные переменные, чтобы принять во соотв ount при рассмотрении времени запуска ASP.NET?

Далее, похоже, что web.config может отправлять другие объекты для использования с определенными типами файлов (* .svc, * .aspx, Windows Identity Foundation (WIF) и т. Д.). Это также может привести к задержкам в ASP.NET.

Последнее, мой проект создан как «веб-проект», а не «веб-сайт». Не уверен, что это повлияло.

Является ли моя теория полной дыр, или я могу что-то сделать, чтобы сделать разработку на старом ноутбуке лучше?

ответ

1

Рабочий процесс будет загружать любые ссылки в AppDomain по мере необходимости. Это означает, что при первом запуске приложения могут быть загружены не все ваши ссылочные сборки. Если вы набираете много времени на загрузку (время запуска начального приложения), я бы подумал о том, что вы делаете в своем методе Application_Start и т. Д. Другая вещь, которую нужно помнить, заключается в том, что это начальное время запуска по сути, один раз, это будет происходить только для каждого запуска приложения (не забудьте, когда ваш пул приложений тоже будет переработан). Потому что это одно время, имеет ли значение время начала? После того, как сайт имеет свое начальное представление страницы, выполнение с этого момента должно быть довольно быстрым.

Вы можете запускать что-то вроде ANTS Profiler или dotTrace и профиль именно там, где все время тратится, а затем решить, какие улучшения производительности вы хотите сделать на основе этой информации.

+0

Аббат Основная причина, по которой я забочусь о времени запуска, заключается в том, что я генерирую много сборок до того, как я выпущу на производство ... и я работаю с автономной почти точной копией моего сайта. Поддержание этого большого сайта становится трудоемким и неэффективным. – LamonteCristo

+0

Захватите себе профилировщик и посмотрите, что происходит. Казалось бы, ваш код потенциально делает что-то много времени. Профилировщик должен выделить процессы длины для вас. –

+0

Возможно, даже VS делает компиляцию, которая занимает много времени. Можете ли вы указать мне на любую информацию Profiling 101? Никогда раньше этого не было ... особенно в этом контексте. – LamonteCristo

Смежные вопросы