标签: azure-web-sites

如何在VSTS中的每个部署之前清除目标Azure网站Windows Server上的wwwroot文件夹

经过大约十二次部署后,wwwroot由于活动的开发和部署,目录中充满了大量文件.我们正在使用VSTS的Azure App Service Deploy任务部署到Azure Web站点Windows Server以获取ASP.NET Web API项目,有没有办法wwwroot在部署到Avsts预部署清理之前清理目录?

azure azure-web-sites azure-devops

22
推荐指数
1
解决办法
6928
查看次数

天蓝网站的应用程序池超时

有没有办法设置在azure站点下运行的网站的应用程序池的超时.

我有一个网站在那里运行,似乎它需要在闲置一段时间后再次启动.

application-pool azure azure-web-sites

21
推荐指数
2
解决办法
1万
查看次数

Azure WebJobs - 我可以使用异步方法吗?

我想知道Azure WebJobs SDK是否可以触发异步方法?目前我有一个如下所示的方法:

class Program
{
    static void Main(string[] args)
    {
        var host = new JobHost();
        host.RunAndBlock();
    }

    public static void ProcessStuff([QueueInput("myqueue")] string msg)
    {
        var tsk = ProcessStuffAsync(msg)
                  .ContinueWith(x => HandleAsyncError(x),
                      TaskContinuationOptions.OnlyOnFaulted);
        tsk.Wait();
    }

    public static async Task ProcessStuffAsync(string msg)
    {
        // do some async stuff and await it
    }

    // other methods ...
}
Run Code Online (Sandbox Code Playgroud)

但是,我想知道我是否可以让JobHost知道调用我的异步方法呢?尝试在WebJobs中使用async/await时,没有大量的文档,如果可以的话,它会非常好.

我正在尝试在本地运行此测试...但WebJobs SDK不支持本地存储模拟器...

更新2014年4月7日:Victor的答案是正确的,但我确实想要展示你在WebJob中使用异步方法会看到什么(他们确实有效).

对于WebJob中的方法,如下所示:

public async static Task ProcessMessageAsync([QueueInput("testq2")] string message)
{
    await Task.Delay(50);

    Console.WriteLine("Processing Message Async...");
    Console.WriteLine(message);
}
Run Code Online (Sandbox Code Playgroud)

您将在WebJobs日志中看到以下输出:

running in pid: …
Run Code Online (Sandbox Code Playgroud)

azure azure-web-sites azure-webjobs azure-webjobssdk

21
推荐指数
2
解决办法
1万
查看次数

Azure网站应用程序洞察 - 切换配置

我有一个Azure网站.为了这个问题,网站的生产版本运行example.com,并运行网站的测试版本sandbox.example.com.

两者之间的唯一区别是它们具有不同的配置.

目前,他们在不同的网站上运行,我通过git将相同的网站部署到每个azure网站.

我想分离出Application Insights数据.是否存在任何人使用的技术或流程 - 除了ApplicationInsights.config在部署后在沙箱环境中编辑文件?

或者使用部署槽以某种方式处理这个?

azure azure-web-sites azure-application-insights

21
推荐指数
1
解决办法
1万
查看次数

如何在Web App Service中使用"Azure文件存储"?

我一直在努力寻找一些有助于解释的资源,以及我们如何将文件存储与Web App Service一起使用.

有一些方法可以将它与旧的Web角色一起使用,请点击此处http://fabriccontroller.net/blog/posts/using-the-azure-file-service-in-your-cloud-services-web-roles-and-工人角色/

但是,"Azure Web服务"中没有OnStart()方法.

c# asp.net-mvc azure azure-web-sites azure-files

21
推荐指数
2
解决办法
2万
查看次数

在Azure Web应用程序设置中使用数组

在我的ASP.NET 5(RC1)代码中,我有一个appsetting.json,看起来像这样:

{
    "SomeSettings": {
        "PropA": "ValueA",
        "PropB": [
            "ValueB1",
            "ValueB2"
        ]
    }
}
Run Code Online (Sandbox Code Playgroud)

在我的开发机器上运行代码时使用这些值(即localhost).如果我想覆盖wep应用程序的Azure应用程序设置中的"SomeSettings",我将如何指定"PropB"数组?

我想要存储信息的SomeSettings.cs类如下所示:

public class SomeSettings
{
    public string PropA { get; set; }
    public List<string> PropB { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

问题是"PropB" - 如何在Azure中将数组或List指定为字符串 - 这是否可能?

在我的Startup类的构造函数中,我有:

var builder = new ConfigurationBuilder()
    .AddJsonFile("appsettings.json")
    .AddEnvironmentVariables();
Run Code Online (Sandbox Code Playgroud)

在我的Startup类的配置方法中,我有:

var someSettings = configuration.GetSection("SomeSettings").Get<SomeSettings>();
Run Code Online (Sandbox Code Playgroud)

azure azure-web-sites asp.net-core

21
推荐指数
1
解决办法
4655
查看次数

Azure Web App部署:Web Deploy无法修改目标上的文件,因为它已被外部进程锁定

我正在使用VSTS中的"Azure Web App部署"构建步骤将ASP.NET Core API发布到Azure Web App:

Azure Web App部署

有时,此步骤会出现以下错误:

[error] Microsoft.Web.Deployment.DeploymentDetailedClientServerException:Web Deploy无法修改目标上的文件"MyProject.Api.exe",因为它已被外部进程锁定.为了使发布操作成功,您可能需要重新启动应用程序以释放锁定,或者在下次发布尝试时使用.Net应用程序的AppOffline规则处理程序.有关详情,请访问:http: //go.microsoft.com/fwlink/?LinkId = 221672 #ERROR_FILE_IN_USE.

此GitHub问题引发了同样的问题,但没有使用Azure Web App部署构建步骤的建议解决方案.

azure azure-web-sites azure-devops azure-pipelines-build-task azure-pipelines

21
推荐指数
6
解决办法
1万
查看次数

Azure WebJobs和部署插槽

当我将带有QueueTrigger(在app.config中定义的队列连接)的连续运行的Azure WebJob部署到部署槽(例如"Staging")时会发生什么?

它会开始运行并收听队列中的消息,还是只会在生产槽中启动?

我担心的是,如果只是开始处理来自队列的消息,即使它还不在生产槽中.如果是这种情况,是否应将队列连接字符串从app.config移动到Azure网站配置中,以便我的暂存和生产插槽可以在不同的队列上运行?

azure azure-web-sites azure-webjobs

20
推荐指数
2
解决办法
5346
查看次数

这种Azure网站挂起的原因是什么?

我在Azure上有一个相当高负载的部署:4个大型实例,每秒服务大约300-600个请求.在正常情况下:"平均响应时间"为70到150毫秒,但有时它可能长到200-300毫秒,但它绝对没问题.

虽然,每天一到两次(不是在"高峰时间"),我在网站监控标签上看到了这样的图片:

Azure网站监控

因此,每分钟的请求数量显着下降,平均响应时间增加到3分钟,一段时间后 - 一切都恢复正常.

在此"停电"期间,只有0.1%的请求被删除(带有超时的Http服务器错误),其他请求只是在队列中等待,并且通常在几分钟后处理.虽然,并非所有客户都准备等待:-(

内存使用率始终低于30%,CPU使用率仅高达40-50%.

我已经检查了什么?:

  1. 跟踪超时请求:他们确实在随机位置超时.
  2. Azure存储和其他使用的组件的限制:根本没有限制.
  3. 我还尝试通过CloudFlare路由所有流量:并看到了同样的问题.

这些问题可能是什么原因?我接下来可以检查什么?
谢谢大家!

更新1:BenV提出了尝试的好处,但不幸的是它没有显示任何内容:-(
我配置了每500k请求回收的进程并且还添加了工作节点,因此现在CPU利用率现在不到40%,但仍然会出现停电.

更新2:项目使用ASP.Net MVC 4.

c# azure asp.net-mvc-4 azure-web-sites

20
推荐指数
2
解决办法
444
查看次数

在azure webapp部署之后获取正在构建的站点消息

我在发布(使用visual studio webdeploy)我的webapp到azure时遇到了网络故障.后来我再次尝试,然后我收到以下错误信息.

错误5 Web部署任务失败.(Web部署无法修改目标上的文件'NewRelic.Agent.Core.dll',因为它被外部进程锁定.为了使发布操作成功,您可能需要重新启动应用程序以释放锁定,或者在下次发布尝试时使用.Net应用程序的AppOffline规则处理程序.有关详细信息,请访问:http: //go.microsoft.com/fwlink/?LinkId = 221672 #ERROR_FILE_IN_USE.)0 0 Gamook.VideoServer.Web.Api

所以我重新启动了我的webapp几次,但同样的例外.然后我尝试用FTP.那也是一次失败.几分钟后,我再次尝试使用visual studio web部署,然后发布成功.但现在我正在建设503错误网站.任何的想法?

注意:我也尝试了离线应用.没有希望

c# azure web-deployment visual-studio-2012 azure-web-sites

20
推荐指数
2
解决办法
5769
查看次数