Azure应用服务

将 ASP.NET Core SignalR 应用程序发布到 Azure App Service

作者: Brady Gaster

Azure App Service是一种Microsoft 云计算平台服务,用于承载 web 应用,包括 ASP.NET Core。

备注

本文介绍如何从 Visual Studio 发布 ASP.NET Core SignalR 应用。 有关详细信息,请参阅AzureSignalR 服务

发布应用

本文介绍如何使用 Visual Studio 中的工具进行发布。 Visual Studio Code 用户可以使用Azure CLI命令将应用发布到 Azure。 有关详细信息,请参阅使用命令行工具将 ASP.NET Core 应用程序发布到 Azure

  1. 在“解决方案资源管理器”中右键单击该项目,然后选择“发布”。

  2. 确认已在 "选取发布目标" 对话框中选择 "应用服务" 和 "新建"。

  3. 从 "发布" 按钮下拉菜单中选择 "创建配置文件"。

    在 "创建应用服务" 对话框中,输入下表中所述的信息,然后选择 "创建"。

    描述
    名称 应用的唯一名称。
    订阅 应用使用的 Azure 订阅。
    资源组 应用所属的一组相关资源。
    托管计划 Web 应用的定价计划。
  4. 在 "依赖关系" > 添加"下拉列表中选择" Azure SignalR 服务

    !["依赖关系" 区域显示 Azure 选项 !基金."添加" 下拉列表中的 "无 LOC (SignalR)" 服务

  5. 在 " Azure SignalR 服务" 对话框中,选择 "创建新的 Azure SignalR 服务实例"。

  6. 提供名称资源组位置 返回到 " Azure SignalR 服务" 对话框,然后选择 "添加"。

Visual Studio 完成以下任务:

  • 创建包含发布设置的发布配置文件。
  • 使用提供的详细信息创建Azure Web 应用
  • 发布应用程序。
  • 启动加载 web 应用程序的浏览器。

应用的 URL 的格式是 {APP SERVICE NAME}.azurewebsites.net 例如,名为 SignalRChatApp 的应用具有 https://signalrchatapp.azurewebsites.net的 URL。

如果在部署面向预览版 .NET Core 版本的应用时发生 HTTP 502.2 错误的网关错误,请参阅部署 ASP.NET Core 预览版本 Azure App Service以解决此问题。

在 Azure App Service 中配置应用

备注

本部分仅适用于不使用 Azure SignalR 服务的应用。

如果应用使用 Azure SignalR 服务,则应用服务不需要配置应用程序请求路由(ARR)关联和本部分中所述的 Web 套接字。 客户端将其 Web 套接字连接到 Azure SignalR 服务,而不是直接连接到应用。

对于未使用 Azure SignalR 服务托管的应用,请启用:

  • ARR 关联:用于将来自用户的请求路由回同一应用服务实例。 默认设置为 "打开"。
  • 允许 Web 套接字传输正常工作的Web 套接字 默认设置为 "关闭"。
  1. 在 Azure 门户中,导航到应用服务中的 web 应用。
  2. 打开配置 > 常规设置
  3. 将 " Web 套接字" 设置为 "开"
  4. 验证ARR 相关性是否设置为On

应用服务计划限制

基于所选的应用服务计划,Web 套接字和其他传输受到限制。 有关详细信息,请参阅 azure订阅和服务限制、配额和约束一文中的azure 云服务限制应用服务限制部分。

其他资源