如何在 Windows Azure 上设置 Websocket 连接?

Posted

技术标签:

【中文标题】如何在 Windows Azure 上设置 Websocket 连接?【英文标题】:How to setup a Websocket connection on Windows Azure? 【发布时间】:2012-10-28 20:49:28 【问题描述】:

Azure 是否支持将 WebSockets 用于 .NET,如果支持,如何启动和处理 Websocket 连接?

【问题讨论】:

你看过 SignalR for .NET 吗? ***.com/questions/9553432/… +1 表示信号器,否则请查看我采用的不同方法***.com/questions/9177089/… 【参考方案1】:

Azure 网站现在支持 Web 套接字。要使用它们,请转到管理门户中的站点配置页面并打开 Web Sockets。

【讨论】:

我已经在 azure 上打开了 web sockets,但是我无法使用 ws://domain.com/ws.ashx 连接到 websocket .. 如果我使用 http:// 链接有效但是ws:// 不起作用【参考方案2】:

目前这是不可能的。只有当 Azure(云服务或网站)在 Windows Server 2012 (IIS8) 上支持 .NET 4.5 时,您才会获得 websockets,目前情况并非如此。

目前 .NET 4.5 仅在使用 Windows Server 2008 R2 (IIS7) 的网站中可用。

注意:从技术上讲,您可以使用其他解决方案(而不是 IIS)在您的 Azure 应用程序中获取 websocket(例如 Pokein、SuperSocket、...)

【讨论】:

实际上,您将在 IIS7(长轮询)上获得运行良好的后备模式。 Azure SDK 1.8 现已推出,支持 .NET 4.5,您可以在模拟器中测试您的代码...我相信 Azure 支持将在接下来的几天内推出。 go.microsoft.com/fwlink/?LinkID=254364【参考方案3】:

正如 Sandrino 所说,除非您拥有带有 .net 4.5 的 win8/2012,否则这是不可能的。 但是,如果您正在运行 SignalR(当然是 4.5 中的 WebSockets)。

我们在 Azure 上使用 websocket 已经有一段时间了,它运行得非常好。 您可以在http://live.xsockets.net 或我们非常简单的游乐场http://xfiddle.net 尝试一下

问候 乌菲

【讨论】:

您是否尝试过在 azure 模拟器中运行解决方案?我问是因为我现在遇到了一个问题,当我运行 mvc 站点时它工作正常,但是当我从 Visual Studio 运行 teh azure role 时,它​​超时并且不能正常运行。

以上是关于如何在 Windows Azure 上设置 Websocket 连接?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Azure Web App 上设置默认页面

windows azure 自动缩放

Windows Azure Web Site (14) Azure Web Site IP白名单

如何在 Windows Azure 上重写 Codeigniter 的 index.php

如何在 Azure 网站上设置 machineKey

如何在 Azure VM 上设置 FTP