C# .NET Processamento de carga de trabalho A'LA Fila de trabalho Exemplos de processamento de idéias?

StackOverflow https://stackoverflow.com/questions/4202721

Pergunta

Como parte da minha constante curva de aprendizado no que você pode fazer para melhorar os aplicativos, estou tentando obter uma direção para acompanhar, ou seja, fila de emprego ou processamento de carga de trabalho qualquer que você goste.

No passado distante, usei o IBM MQ/Série - ele funcionou para um aplicativo financeiro, mas bastante pesado, se bem me lembro.

Conheço o MSMQ e também ouvi falar de alguns outros.

Mas primeiro, aqui está o meu contexto

Eu tenho um aplicativo C#/. Net Back-end que serve dados etc. a um JavaScript (principalmente jQuery etc) front-end através de chamadas Ajax etc. Eu tenho uma situação em que uma determinada ação envolve o upload de alguns arquivos, configurando alguns registros entradas no banco de dados, enviando por e-mail alguns usuários etc. Então, é claro, não quero fazer esse processo "online"/"em tempo real" devido ao possível atraso de tempo e tenho certeza de que as despesas gerais no servidor da web/banco de dados etc.

Então, dado o tipo de "mensagens" que eu preciso para fazer fila e processar, o que seria (eu não deveria apenas dizer fácil aqui, eu acho!) Um bom ponto de partida? Devo executar com o MSMQ e/ou o SQL 2008 Service Broker, ou algo como ZerOMQ - ou devo simplesmente criar meu próprio serviço de fila de carga de trabalho leve?

Percebo novamente sem ver a imagem completa, é difícil fazer recomendações completas, no entanto, qualquer ponto de partida recebido com gratidão!

David

Foi útil?

Solução

Não tente fazer o seu próprio, por favor! Há tantas coisas a levar em consideração que você gastará mais tempo do que o resto do seu projeto provavelmente.

Eu diria que ir para o MSMQ, é muito fácil de usar com o WCF, as filas são transacionais, têm um mecanismo de tentativa, etc., e você se beneficia da interface do usuário do MSMQ para ver as mensagens, movê -las e assim por diante.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top