Mam rolę sieciową na lazurach i chciałbym wymusić Application_Start bez oczekiwania na pierwsze żądanie.Wymuś uruchomienie aplikacji na platformie Azure Web Rola
udało mi się ustawić „Start automatycznie” właściwość true na mojej stronie
AutoStart a WCF on Azure WebRole
Ale Application_Start nie nazywa dopiero pierwsze żądanie pochodzi.
Nie wiem dokładnie, czy brakuje mi czegoś ważnego tutaj. Serwer to W2008 R2, a wersja IIS to 7.5
Dzięki!
ROZWIĄZANIE
umieścić kod rozwiązanie tutaj. Mam nadzieję, że komuś pomogę. Właśnie dodałem WebRole.cs i po prostu umieść ten kod, aby wykonać ping co 30 sekund. Proszę netice Przeglądam Service.svc, ponieważ jest to mój punkt końcowy, twój punkt końcowy może być inny. Uwaga Pytam o "Endpoint1". Jeśli masz więcej niż jeden punkt końcowy, powinieneś przejrzeć tę linię.
public class WebRole : RoleEntryPoint
{
public override void Run()
{
var localuri = new Uri(string.Format("http://{0}/Service.svc", RoleEnvironment.CurrentRoleInstance.InstanceEndpoints["Endpoint1"].IPEndpoint));
while (true)
{
try
{
var request = (HttpWebRequest)WebRequest.Create(localuri);
request.Method = "GET";
var response = request.GetResponse();
}
catch { }
System.Threading.Thread.Sleep(30000);
}
}
public override bool OnStart()
{
return base.OnStart();
}
}
to właśnie próbuję w tej chwili XD – Jordi
Właśnie edytowałem moje queistion z tym rozwiązaniem. Dzięki! – Jordi
Używam tego samego rozwiązania dla 4 środowisk produkcyjnych dla klientów. musi z wieloma węzłami (instancjami), przypadkowe żądania nagle staną się naprawdę powolne, oczywiście dlatego, że uruchomiono App Start na tych żądaniach.Może dostarczyć kod, jeśli chcesz? – Ash