Requirement: Notify client applications when an entry is added, updated, deleted, or expired in a particular remote cache. Notification is regardless of the server node to which the client connects, and receives a single notification per event. The client application may execute some business logic/computation triggered by such events, and the results of this computation should be accessible from the client application. Java Hot Rod client only. Priority: P1 Status: Committed - Tech Preview Originator: Product Management Responsible team: Infinispan Engineering Team Comments: - current status: basic functionality is implemented and about to be integrated in community. Lacking query DSL integration (big usability impact) and proper failover in case server node crashes (performance during topology change). - the RemoteListener functionality is built on top of the ClusteredListener functionality. ClusterListener doesn't have any form of user validation or testing and is complex piece of functionality by itself. Too many moving pieces - the remote listeners architecture needs to be validated by users. More specifically, in the current implementation of RemoteListener we considered a connection model in which the hotrod client keeps a single TCP connection per listener and to a specific server node. All the server nodes rout all the server events through this node and connection, which might cause a lot of traffic within the ISPN cluster and the server node to become a bottleneck. Based on user feedback, we can either improve on this model, or consider an alternative model in which the listener connects to multiple server nodes. To summarize the RemoteListener, is just a proof of concept at this stage: it needs more functionality and users to validate the architecture. We are far from confident that this feature will be mature till the end of the year and cannot commit on it for that reason. Attachments: Remote Hot Rod Events · infinispan/infinispan Wiki · GitHub Interdependencies:
PR: https://github.com/infinispan/jdg/pull/298
This feature has been delivered. Bugs will be filed as separate issues.