Details
-
Improvement
-
Status: Closed
-
Major
-
Resolution: Fixed
-
None
Description
Cluster messaging uses advisors to know what member of the cluster should be sent a message.
Currently, every time and advisor is asked for advice to iterates over its profiles building up the advice in a HashSet that is returned.
I found on a partitioned region client/server put benchmark (32 client threads, 2 servers with redundancy 1) that if I changed the method adviseAllEventsOrCached to remember what it computed, that it caused the put throughput to increase by 8%. [Update I reran and did not see an improvement so the original 8% difference may have been caused by something else].
Advisors know when a profile is added, removed, or modified. When that happens any advice it has cached can be dropped. Also, the requestors of advice need to expect the Set they get back to be unmodifiable.