--
You received this message because you are subscribed to the Google Groups "DDD/CQRS" group.
To unsubscribe from this group and stop receiving emails from it, send an email to dddcqrs+u...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.
I refactored a small amount of code (5K lines) in a green field app still at pre alpha to move to CQRS and the cost was much larger than I thought .. If you have no need for scaling and an existing system what is the driver for the change ??… If its performance you can partition the DB , run on faster disks or optimize some key queries..
And for eventual consistency you really need to ask the business users once it has been implemented . It’s much easier for a green field app because the expectations are not there.
Ben
--
I don’t think there is extra effort in maintaining a read and write model but I do think the conversion cost of the domain will swallow any form of benefit in lower maintenance…
Re using views.. you can do things at the DB end eg replicate it and just do read requests from 1 db but this is not CQRS - CQRS ( and its benefits) refer’s to the domain not the data.. I did try something similar once with views but it fell apart because de normalized views didn’t work properly with Foreign Keys / child objects ( eg where it needs to add one so huge queries with lots of Outer if not null joins which are not allowed on Indexed views see http://blog.sqlauthority.com/2010/06/29/sql-server-outer-join-not-allowed-in-indexed-views/ ) .
If you have an existing system that is too complex , I would break it down with DDD or SOA before considering CQRS . Or just use DDD with CQRS just for the part with the hard logic. SOA has the benefit that you can use the whole system as is and don’t need a massive and risky change to the domain logic , just add some facade’s and cut what is not needed when you have the time and put new requirements into new services if appropriate. Once this is done most of the domains (not all) will probably be too simple for CQRS
Ben
--