Веб-хостинг Вызова
Вы должны помнить, что ни один из вариантов конфигурации машины не доступны, если вы размещены на общедоступном сервере, так как многие из нас (небольшие компании и частные лица) являются.
ASP.NET MVC Накладные
Мой сайт занимает не менее 30 секунд, когда он не был ранен в течение 20 минут (и веб-приложение было остановлено). Это ужасно.
Другой способ для тестирования производительности
Там еще один способ проверить, если это ваш ASP.NET MVC запустить или что-то другое. Снимите обычную HTML-страницу на своем сайте, где вы можете нажать ее прямо.
Если проблема связана с запуском ASP.NET MVC, то страница HTML будет отображаться почти сразу, даже когда веб-приложение не запущено.
Вот как я впервые узнал, что проблема была в запуске ASP.NET MVC. Я загрузил HTML-страницу в любое время, и она будет быстро загружаться. Затем, после удара, что HTML-страницы я ударил одного из моих URL-адресов ASP.NET MVC и я получаю сообщение Chrome «Ожидание raddev.us ...»
Другой тест с полезными Script
После этого я написал LINQPad (проверьте больше http://linqpad.net), который ударил меня по моему веб-сайту каждые 8 минут (меньше времени для разгрузки приложения, которое должно составлять 20 минут), и я позволяю ему работать в течение нескольких часов ,
Пока сценарий работал, я попал на свой веб-сайт и каждый раз, когда мой сайт выглядел невероятно быстро. Это дает мне хорошую идею, что, скорее всего, медленность, которую я испытывал, была из-за старта ASP.NET MVC.
Получить LinqPad, и вы можете запустить следующий скрипт - просто измените URL-адрес на свой собственный и позвольте ему запустить, и вы можете легко его протестировать. Удачи.
ПРИМЕЧАНИЕ: В LINQPad вам нужно нажать F4 и добавить ссылку на System.Net добавить библиотеку, которая будет извлекать свою страницу.
ТАКЖЕ: убедитесь, что вы изменили переменную String URL, чтобы указать URL-адрес, который будет загружать маршрут с вашего сайта MVC ASP.NET, чтобы двигатель работал.
System.Timers.Timer webKeepAlive = new System.Timers.Timer();
Int64 counter = 0;
void Main()
{
webKeepAlive.Interval = 5000;
webKeepAlive.Elapsed += WebKeepAlive_Elapsed;
webKeepAlive.Start();
}
private void WebKeepAlive_Elapsed(object sender, System.Timers.ElapsedEventArgs e)
{
webKeepAlive.Stop();
try
{
// ONLY the first time it retrieves the content it will print the string
String finalHtml = GetWebContent();
if (counter < 1)
{
Console.WriteLine(finalHtml);
}
counter++;
}
finally
{
webKeepAlive.Interval = 480000; // every 8 minutes
webKeepAlive.Start();
}
}
public String GetWebContent()
{
try
{
String URL = "http://YOURURL.COM";
WebRequest request = WebRequest.Create(URL);
WebResponse response = request.GetResponse();
Stream data = response.GetResponseStream();
string html = String.Empty;
using (StreamReader sr = new StreamReader(data))
{
html = sr.ReadToEnd();
}
Console.WriteLine (String.Format("{0} : success",DateTime.Now));
return html;
}
catch (Exception ex)
{
Console.WriteLine (String.Format("{0} -- GetWebContent() : {1}",DateTime.Now,ex.Message));
return "fail";
}
}
Привет друг, выполняет C достаточно? Зачем ? Нужно ли нам это использовать или нужно также отключить переработку? Я всегда чувствую, что второй запрос первого дня очень медленный из IIS7.5. – qakmak