2015-08-20 46 views
2

我做了以下架构的Web应用程序:部署自托管SignalR后端天青

一个React.js前端(仅适用于客户端的JavaScript,没有Node.js的服务器)

一个SignalR C#控制台应用程序中的自托管后端

我想将我的安装程序部署到Azure,但我是一个使用Azure的完全新手。

我应该没事按照像this one

教程部署的前端,但我无法找到有关部署SignalR自托管后端的任何资源。

我发现了一些资源,讨论有关在IIS托管在Azure中的ASP.NET MVC SignalR的Web应用程序,但不是关于自托管之一。

我应该为我的后端使用应用程序服务吗?任何警告?

谢谢你enlighting我

+0

“*我应该为我的后端使用应用服务吗?*” - 没有正确答案。应用服务是托管服务解决方案。还有web/worker角色云服务,虚拟机......在角色实例和虚拟机中托管/运行软件的方式也很多。这完全取决于您要查找的功能。 –

+0

@DavidMakogon哪种方法最适合我的自托管SignalR后端服务?我不想在IIS中运行它,我希望它具有很高的可扩展性,因为我可能需要同时管理数千个websocket连接。 – ibiza

+0

没有“最适合的”。 –

回答

3

你可以,但它不是最好的性能明智的,来承载您在IIS SignlarR。

原因在IIS不承载包括:

环境下IIS不可用的或期望的,例如没有一个IIS现有 服务器场。需要避免IIS 的性能开销。 SignalR功能将被添加到在Windows服务,Azure工作者角色, 或其他进程中运行的 exise应用程序中。

在Azure中,你可以,例如运行它。

应用服务read more)

Windows服务exampleread more

工作者角色read more

+0

这并不准确。你可以用很多方式运行它,而不仅仅是描述的那些。 –

+0

我同意我**不想**在IIS中运行它,这就是为什么我自己托管它。在我的开发机器上,它作为Windows服务运行,但我应该如何在Azure中托管此程序? – ibiza

+0

@ibiza我最好将您的Windows服务转换为工作者角色。 – Rikard