Thank you Roland and team for listening and sharing your ideas and plans. As I have said, I think there are three different but related areas of functionality being discussed here: 1) Actor Persistence, 2) Publish-Subcribe (to Topics), and 3) Full CQRS support.
Conceptually, for CQRS (3), I like to think of the write-side (primarily) creating one big event stream that flows (primarily) to the read-side. PersistentView actors can then query from this stream to get persistent state for an actor or a stream based on some criteria (query). As has been mention by yourself and others, Actor Persistence (1) seems to work very well for persistence events. However, there are a few things I suggest you could possibly do to make it even better and leverage the new functionality of PersistentView. 1. I suggest there should be a facility (Trait?) for any actor to be able to publish events to the "event stream." I believe it is a common "requirement" in CQRS to be able to publish events to the event stream independent of supporting Actor Persistence (1), 2. Considering the facilities to be provided for PersistentView to read from a stream based on some query, I suggest it is worth going one extra step to allow actors (not necessarily PersistentActors) to post to a specific keyword/topic(s) and thus provide Publish-Subscribe (2.), and finally 3. I would suggest some ability to provide additional metadata with the events that could be used for causal dependency / ordering hints or other functionality like Publish/Subscribe (2). This may be possible to do just by the user including metadata within the events but I am not sure. I note: a) Publish/Subscribe (2) is not requiring the event store implementation maintains independent topic stream, some may by default - others may construct them if queried, just that queries can possibly refer to them, and b) all three of these suggestions are somewhat related. In summary, I think giving a little bit of extra love to the write-side (not specifically for PersistentActor) could be very useful considering the work you are planning on the read-side (PersistentView). Thanks for considering these suggestions. Cheers, Ashley. -- >>>>>>>>>> Read the docs: http://akka.io/docs/ >>>>>>>>>> Check the FAQ: >>>>>>>>>> http://doc.akka.io/docs/akka/current/additional/faq.html >>>>>>>>>> Search the archives: https://groups.google.com/group/akka-user --- You received this message because you are subscribed to the Google Groups "Akka User List" group. To unsubscribe from this group and stop receiving emails from it, send an email to akka-user+unsubscr...@googlegroups.com. To post to this group, send email to akka-user@googlegroups.com. Visit this group at http://groups.google.com/group/akka-user. For more options, visit https://groups.google.com/d/optout.