In a CQRS system, the convention that we follow is we render the detail view of an aggregate(i.e getById) using the write model and views containing multiple aggregates(like a dashboard) using read model. Hence in a Sales CRM, we modeled the lead list dashboard UI using read model and lead details page using write model.
When I perform operations on the detail view of a lead, since I render the page using write model, my changes reflect immediately on UI. Eg, when I change the country of a lead, the changes can reflect on UI immediately. But when I need to provide the same api on dashboard, the changes will not be visible immediately as the read model will be eventually consistent. Similarly when performing bulk operations like update country of 10 leads, my listing page will be eventually consistent. The delay in updation will be ~1s at worst in my case as the consumers/subscribers(read models) are poll based and poll at an interval of 1s. Is there any way I can make it more real-time? I checked other CRMs where they provide seemingly immediate consistency even when performing bulk operations. Having a delay of 1s in the listing page does not give a good customer experience.