强制应用程序启动Azure Web角色

前端之家收集整理的这篇文章主要介绍了强制应用程序启动Azure Web角色前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我在azure上有一个web角色,我想在不等待第一个请求的情况下强制执行A​​pplication_Start.

我设法在我的网站上将“自动启动”属性设置为true

AutoStart a WCF on Azure WebRole

但是,在第一个请求到来之前,不会调用Application_Start.

我不确切地知道我是否遗漏了一些重要的东西.服务器是W2008 R2,IIS版本是7.5

谢谢!

我把解决方代码放在这里.我希望能帮助别人.我刚刚添加了一个WebRole.cs,只需将该代码放入每30秒执行一次ping操作.请netice我正在浏览Service.svc,因为这是我的终端,你的终端可能是另一个终端.请注意,我要求“Endpoint1”.如果您有多个端点,则应该查看该行.

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();
    }
}

解决方法

IIS将仅在第一个请求到达时启动.解决方法是从OnStart或您的RoleEntryPoint后代向同一个VM发送HTTP请求 – 使用WebRequest或等效类很容易.

猜你在找的HTML相关文章