我有一个Windows服务,允许传入和传出连接到使用Lidgren UDP网络库的UDP端口。
我一直非常希望将此更改为使用.net核心来获得一些明显的跨平台优势以及Microsoft Azure云中的部署和扩展等其他好处。
这似乎唯一简单的方法是使用Web Core应用程序,它不是我正在做的事情(它不处理http请求)。
我已经完成了大量的谷歌搜索,以弄清楚如何处理这种情况,我发现的唯一的东西是一个名为WindowsService for .net core的库,但这只允许我将462应用程序转换为.net核心并继续使用不理想的Windows服务。
TLDR;任何人都可以了解我如何将处理UDP流量的Windows服务转换为可部署的Azure应用程序?
答案 0 :(得分:2)
我真的很想改变这一点,使用.net核心来获得一些明显的跨平台优势
在更改为.NET Core之前,您需要确认所有依赖程序集是否支持.NET Core。
任何人都可以了解我如何将处理UDP流量的Windows服务转换为可部署的Azure应用程序?
有多种服务支持Azure上的Windows服务。根据您的描述,您可以选择Azure VM规模集,Azure Cloud Service和Azure Service Fabric来托管您的Windows服务。所有这些服务都可以侦听UDP端口以从/向客户端发送/发送消息。
如果选择Azure VM比例集,则无需修改代码。您还可以将Windows服务打包为可执行文件,并将其部署到Cloud Service或Service Fabric。您还可以查看以下文档以查看differences between Cloud Service and Service Fabric。