originally we were going to use rados watch/notify to build view push (push out changes to clients like sequencer updates or view changes instead of only client polling).
i think this is sort of a bad choice. first, its not clear how scalable watch/notify is, and we don't need the acks. we just need a best effort notification. i think that watch/notify in rados is used to implement updates with barriers. fundamentally, this isn't backend specific. we can implement it as a separate service using something as simple as a redis instance. in the end, its an optimization.
but... we have other similar things like pushing out updates to the write head to a fleet of readers.
we'd like to be able to add a service layer for caching and io merging.
all of these things are optimizations that can be layered in independent of the backend.