Pregunta

Como parte de mi constante curva de aprendizaje sobre lo que se puede hacer para que las aplicaciones se escale mejor, actualmente estoy tratando de encontrar una dirección para las colas, es decir,cola de trabajos o procesamiento de cargas de trabajo, la frase que desee.

En el pasado lejano usé IBM MQ/Series; funcionó para una aplicación financiera, pero bastante pesado, si mal no recuerdo.

Conozco MSMQ y también he oído hablar de muchos otros.

Pero primero, aquí está mi contexto.

Tengo una aplicación web back-end C#/.NET que sirve datos, etc. a una interfaz Javascript (principalmente jQuery, etc.) a través de llamadas AJAX, etc.Tengo una situación en la que una determinada acción implica cargar algunos archivos, configurar algunas entradas de registros en la base de datos, enviar correos electrónicos a algunos usuarios, etc.Entonces, por supuesto, no quiero realizar este proceso "en línea"/"en tiempo real" debido al posible retraso de tiempo y estoy seguro de los gastos generales en el servidor web/base de datos, etc.

Entonces, dado el tipo de "mensajes" que necesito poner en cola y procesar, ¿cuál sería (¡supongo que no debería decir simplemente fácil aquí!) un buen punto de partida?¿Debería ejecutar MSMQ y/o el agente de servicios SQL 2008, o algo como ZeroMQ, o debería simplemente crear mi propio servicio de cola de carga de trabajo liviano?

Nuevamente me doy cuenta de que sin ver la imagen completa es difícil hacer recomendaciones completas; sin embargo, cualquier punto de partida lo recibo con gratitud.

David

¿Fue útil?

Solución

No trate de hacer su propio, por favor! Hay tantas cosas a tener en cuenta que va a pasar más tiempo en él que el resto de su proyecto lo más probable.

Yo diría que ir para MSMQ, es muy fácil de usar con WCF, las colas son transaccionales, tener un mecanismo de reintento, etc, y se beneficiará de la MSMQ interfaz de usuario para ver los mensajes, moverlos y así sucesivamente.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top