Я бы сказал, что что-то вроде вставки не требует рабочей роли. В любом случае, у вас будет вставка в очередь, поэтому вы ничего не будете сохранять в веб-роли. Лучше всего было бы изолировать ваши вставки (и весь доступ к данным) в отдельный класс (или классы) в вашей веб-роли. Это позволит вам отделить остальную часть кода в вашей веб-роли от конкретной системы хранения данных, которую вы используете. Это значительно упрощает последующее изменение хранилища данных. Если ваши вставки в конечном итоге нуждаются в дополнительной обработке, вы можете добавить очередь и рабочую роль, когда это необходимо, но я все же сказал бы, что вы хотите выполнить вставку непосредственно в хранилище таблиц, а затем передать вычислительную или другую бизнес-логику рабочая роль. Затем эта рабочая роль может обрабатывать сообщения из очереди или просто запрашивать в хранилище таблиц новые (необработанные) записи.
Способ, которым я вижу использование очереди для связи с рабочей ролью, становится наиболее эффективным, когда есть вычисления или другая обработка, которая должна быть выполнена с данными. Тот, который я использовал чаще всего, на самом деле является одним из примеров в Azure SDK, который показывает, как создавать эскизы изображений. Моя веб-роль вставляет загруженное изображение в хранилище BLOB-объектов Azure и связанные описания и другие поля в хранилище таблиц Azure. Он также помещает сообщение в очередь, которое сообщает рабочей роли, что существует новое изображение, для которого необходимо создать миниатюры. Я на самом деле генерирую несколько разных размеров каждого изображения для использования в разных частях сайта. Рабочая роль просто генерирует эти миниатюры и не требует отправки каких-либо уведомлений обратно в веб-роль. Любое место, где используются изображения, имеет логику для использования исходной загрузки или других заполнителей, когда эскизы еще не доступны.
Этот же процесс может просто использовать запрос в хранилище больших двоичных объектов, чтобы определить, какие изображения все еще требуют обработки, если вы хотите вообще пропустить очередь. Я не определился, предпочитаю ли я использовать очередь или просто опрашивать данные, чтобы найти записи, которые требуют обработки рабочей роли. Я предполагаю, что очередь более эффективна, но она также добавляет дополнительный уровень сложности и дополнительную потенциальную точку отказа.
Изменить в ответ на комментарий: Когда я отправил этот ответ, я сказал, что просто используйте изображение с полным разрешением в пользовательском интерфейсе, если миниатюра недоступна. Сейчас я работаю над сайтом, который просто использует миниатюру изображения по умолчанию с надписью «обработка», пока созданный эскиз не станет доступен. Выбор за вами и действительно зависит от требований пользовательского интерфейса вашего приложения.
Одна вещь, которую вы можете сделать, это использовать SignalR или немного AJAX, чтобы уведомить браузер пользователя о появлении нового эскиза, не дожидаясь загрузки новой страницы.
Просмотр эскиза заполнителя во время обработки изображения в рабочем потоке намного удобнее, чем ожидание загрузки страницы во время создания эскиза.