I am considering a CQRS refactoring process. It is more of a learning exercise in my spare time. The use case is similar to a price comparison website where a user enters their details for a mortgage and they are presented with mortgage options from service providers. For example, a user enters the minimum deposit; term; house value and then they are presented with options e.g. mortgage 1 from HSBC; mortgage 2 from NatWest etc. A user could make more than one request; adjusting the criteria each time. For example:
1) Criteria 1: 25 year term, £23,000 deposit, £150,000 value 2) Criteria 2: 30 years term, £20,000 deposit, £180,000 value etc
I believe I have two options:
1) Event Sourcing using event store. 2) Message Queue/service bus
With regards to option 1 - is this use case even suitable for event sourcing? The classic example of event sourcing is a bank account where you would be able to see what the balance was on date: x or date: y by replaying the events. However, in my case; the business would not want to know what the value of 'deposit' was on date: x. Each user search is new and independent of the last.
With regards to option 2 - I believe message queues (and service buses) are suitable when there is communication required with another microservice. In my case; the publisher and subscriber to the event would be the same microservice.
My analysis tells me that neither option is suitable because of the reasons stated in the two paragraphs above. Am I correct in this analysis?