Como detecto falhas inesperadas na função do trabalhador e reprocesso dados nesses caso

Eu quero criar um serviço da web hospedado no Windows Azure. Os clientes farão upload de arquivos para processamento, a nuvem processará esses arquivos, produzirá os arquivos resultantes, o cliente fará o download dele

Acho que usarei funções da Web para lidar com solicitações HTTP e funções de trabalhador para processamento real e algo como Fila do Azure ou Armazenamento de Tabela do Azure para rastrear solicitações. Vamos fingir que será o Armazenamento de Tabela do Azure - um registro de "solicitação" por arquivo carregado pelo usuário.

Um grande problema de design é o processamento de um único arquivo que pode levar de um segundo a dez hora

Então, espero o seguinte caso: uma função de trabalhador é iniciada, chega ao Armazenamento de Tabelas do Azure, encontra uma solicitação marcada como "pronta para processamento", marca "está sendo processada", inicia o processamento real. Normalmente ele processaria o arquivo e marcaria a solicitação como "processada", mas e se ela morrer inesperadament

A menos que eu cuide disso, a solicitação permanecerá no estado "está sendo processado" para sempr

Como rastrear solicitações marcadas como "está sendo processada", mas abandonadas? Qual mecanismo no Windows Azure seria mais conveniente para isso?

questionAnswers(4)

yourAnswerToTheQuestion