¿Se puede utilizar el patrón arquitectónico CQRS (Segmentación de la responsabilidad del comando-consulta) para construir un sitio como StackOverflow? Soy relativamente nuevo en CQRS y DDD (Domain Driven Design) y estoy explorando el patrón e intentando modelar sitios que conozco del patrón. Si bien puedo ver que CQRS es útil para muchos aspectos para un sitio como StackOverflow, hay algunas áreas de las que no estoy seguro (o, al menos, no puedo entenderlas de inmediato). Específicamente:¿Se puede usar CQRS para un sitio como StackOverflow?
- Hacer preguntas Cuando creo una pregunta, lo veo inmediatamente y puedo editarlo. En CQRS, ejecuto un comando como 'AskQuestion' y se crea un evento llamado 'QuestionAsked'. Eventualmente, , la pregunta se envía al almacén de datos desnormalizado . Pero la experiencia de SO es inmediata. ¿Es esto posible con CQRS?
- Votación Mis votos se reflejan de inmediato. En CQRS, me imagino que estos comandos/eventos eventualmente moviéndose a través del evento bus a la tienda de lectura. Pero SO le da a la información de inmediato.
Mis preocupaciones se centran realmente en el concepto de retroalimentación inmediata que proporciona SO. ¿Puede CQRS proporcionar esto? Si es así, ¿cómo se haría esto? ¿Hay buenos ejemplos que ilustran cómo manejar esto?
Si ayuda, mi entorno es VS2010/C#/SQL2008R2, pero estoy abierto a otras opciones como SQLite, etc. También estoy mirando los marcos de NCQRS y LOKAD, junto con la muestra de Mark Nijhof y estoy planeando descargando la muestra de Greg Young. No encontré mucho más por ahí para muestras CQRS.
Gracias!
"falso" y "truco" no son muy tranquilizadores ... esto se parece más a un truco, una solución en lugar de una solución de sonido. –
Por falso me refiero a que no tiene que enviar datos a la base de datos/servidor antes de ir a una pantalla donde se necesitan datos. No hay problema en esperar hasta que los datos hayan pasado por el sistema (escritos y leídos), pero debe entrenar al usuario para que actualice la pantalla o configure algún tipo de mecanismo de extracción. Esto puede afectar la experiencia del usuario. Y no es un truco ser inteligente ;-) – Fossmo
¡Tranquilícese, Fake es exactamente lo que necesita! Es un poco un cambio de mentalidad ... – gkdm