Я пишу маленькую программу вычисления с партией операций чтения на файлах блоба... Если я должен пойти для роли рабочего или веб-роли....
Единственное различие между веб-ролью и рабочей ролью заключается в том, что в веб-роли IIS (фактически размещенное веб-ядро ) запускается и указывает на каталог данных вашего приложения. Вы по-прежнему можете поместить код в WebRole.cs, который делает то же самое, что и ваша рабочая роль, поэтому решение действительно должно быть «Хотите ли вы IIS?». Если да, используйте веб-роль. Если нет, используйте рабочую роль.
Относительно вашего вопроса о том, как разместить рабочую роль: это тот же процесс, что и хостинг веб-роли - просто добавьте новую роль в свой проект и выберите Worker Role вместо Web Role. Роли - это не что иное, как «виртуальные машины». А когда вы выбираете количество «экземпляров», это соответствует количеству запущенных виртуальных машин. То, что объяснял @smarx, просто говорит о том, что веб-роли (или веб-виртуальные машины) имеют в вашем распоряжении IIS, а рабочие роли - нет.
Чтобы увидеть, что делает рабочая роль, есть два относительно общих шаблона:
Если вы хотите посмотреть отличные видеоролики для начала работы, посмотрите Шоу облачного покрова . В эпизоде 3 конкретно говорится о создании рабочих ролей, а в @smarx показано, как разместить html-сервер Mongoose из рабочей роли.
Определенно рабочая роль, веб-роль, как следует из названия, предназначена для ответа на веб-запросы, и в зависимости от настроек IIS, веб-запросы, скорее всего, будут завершаться через 1 минуту или около того.
Трудно дать окончательный ответ без дополнительной информации, но на первый взгляд я бы сказал, что это рабочая роль. Это похоже на внутреннюю службу Windows, в отличие от того, что отвечает на HTTP-запросы по мере их поступления.