Web角色与工作者角色

时间:2012-05-04 08:47:51

标签: azure azure-worker-roles azure-web-roles

您好我正在Azure WorkerRole中实现TCPIP侦听器。 WorkerRole侦听传入的TCP数据并将其存储在Azure表存储中。

当我在WorkerRole的Run()中执行此操作时,一切正常。

但是当在WebRole的Run()中实现相同的东西时,我得到一条消息“WebIIS已经退出”,并且调试模式在dev环境中退出。

这是为什么?

有人可以解释一下WebRole与WorkerRole的不同之处吗?我们可以实现一个持续侦听WebRole的TCPIP侦听器吗?

由于 阿尼尔

3 个答案:

答案 0 :(得分:0)

认为WebRole的工作方式与Web应用程序类似。通过接收请求然后它返回响应,而工作者角色的工作方式类似于Windows服务。虽然两者都可以传递TPC信息,但它们的处理方式却有所不同。仅在处理请求时可以使用Web角色。工作者角色将不断提供。如果您希望Web角色能够持续监听TCP通道,那么工作者角色最有可能更适合您的需求。

此致

答案 1 :(得分:0)

我对类似问题的回答:https://stackoverflow.com/a/2610895/94559

简而言之,Web角色适用于IIS,而工作角色适用于其他所有内容。在这种情况下,我认为你想要一个工人角色。

答案 2 :(得分:0)

什么是Azure云服务角色?

在Azure中,云服务角色是托管的,负载均衡的平台即服务虚拟机的集合,它们协同工作以执行常见任务。 Cloud Service角色由Azure结构控制器管理,提供可扩展性,控制和自定义的最终组合

什么是网络角色?

Web角色是Azure中的一项云服务角色,其配置和自定义为运行由Internet信息服务(IIS)支持的编程语言/技术开发的Web应用程序,例如ASP.NET,PHP,Windows Communication Foundation和快速CGI。

什么是工人角色?

辅助角色是Azure中用于运行应用程序和服务级别任务的任何角色,通常不需要IIS。在Worker Roles中,默认情况下不安装IIS。它们主要用于执行支持后台进程以及Web角色,并执行任务,例如自动压缩上载的图像,在数据库中发生更改时运行脚本,从队列和进程中获取新消息等。