我有一个.NET控制台应用程序,它以WCF服务的形式旋转Web套接字服务器。该服务主要由浏览器内的JS客户端使用。我想将它部署到Azure,我尝试部署到Web应用程序和Webjob。这些都没有用,我不相信它们是正确的选择,因为我的理解是它们只能侦听端口80和443,并运行w3wp.exe。
那么在Azure中配置什么样的资源来部署和运行这个应用程序呢?
实施细节:
WCF配置:
<services>
<service name="WebSocketService">
<host>
<baseAddresses>
<add baseAddress="http://localhost:8888" />
</baseAddresses>
</host>
<endpoint address="CallbackService" binding="customBinding" contract="IWebSocketService" bindingConfiguration="webSocket" />
</service>
</services>
<bindings>
<customBinding>
<binding name="webSocket">
<byteStreamMessageEncoding />
<httpTransport>
<webSocketSettings transportUsage="Always" createNotificationOnConnection="true" />
</httpTransport>
</binding>
</customBinding>
</bindings>
Program.cs中:
var svcInstance = container.Resolve<IWebSocketService>();
var svcHost = new ServiceHost(svcInstance);
svcHost.Open();
Console.ReadKey();
您应该考虑使用SignalR,特别是Azure SignalR服务 - qazxsw poi