我想知道是否可以将控制台应用程序编写到Windows Azure上的端口。
控制台应用程序没有接口,它只会在不通知用户正在做什么的情况下完成工作。在这种情况下,它将是一个套接字应用程序。
我不希望它成为一个网站。它不会是项目的任何补充。
编辑: 谢谢大家这么快回复我。现在我得到了我一直在寻找的答案。现在我的问题是:在亚马逊会有什么叫做?它是Azure上的工作者角色......现在我知道感谢所有人
答案 0 :(得分:7)
您绝对可以在Windows Azure中运行控制台应用程序,无论是Web角色还是辅助角色(Windows Server 2012或2008 R2 / SP2),您通常可以不修改地运行它们。你需要:
OnStart()
(首选位置,在VM实例放入负载均衡器之前调用)或Run()
启动控制台应用。当有多个VM实例时,您需要考虑控制台应用程序的运行方式。您的控制台应用程序的两个实例可以同时运行吗?如果没有,您需要在启动控制台应用程序可执行文件之前设置互斥检查。
Steve Marx最近blogged about running the Mongoose Web Server in Windows Azure(Mongoose是一个基于C ++的控制台应用程序)。所有代码都在github的PackAndDeploy项目中,因此您可以看看他是如何设置的。
编辑2013年7月27日这个答案有点过时了。您还可以在Windows或Linux虚拟机中运行控制台应用程序。现在,您已将Windows Server 2012作为Web /辅助角色实例的操作系统选择。
答案 1 :(得分:2)
在亚马逊上,没有“工作者角色”和相关的超级简单部署。您只需部署控制台应用程序并手动或通过计划任务在EC2实例上启动它。 如果您的应用必须无人值守并且没有登录用户,那么您必须依赖部署在AWS EC2上的Windows服务。
答案 2 :(得分:1)
您可以在Windows Azure中使用辅助角色。输出可以写入某个monitors。
答案 3 :(得分:1)
您无法托管控制台应用程序,您可以使用名为Worker Role的东西。
答案 4 :(得分:0)
您无法在Azure或任何其他云中直接托管控制台应用。正如Ghyath所说,在Azure的情况下你必须使用worker角色。
查看this示例,演示如何将控制台应用程序转换为windows azure中的辅助角色。参见Task1。