Package io.axoniq.framework.springcloud.discovery
@NullMarked
package io.axoniq.framework.springcloud.discovery
Discovery of the
capabilities of the
ServiceInstances reported by Spring Cloud Discovery.
A CapabilityDiscoveryMode answers the one question the routing
ring needs answered per instance: which messages does it handle. RestCapabilityDiscoveryMode answers it over HTTP against the endpoint
served by MemberCapabilitiesController, and IgnoreListingDiscoveryMode keeps instances that answer with a client
error out of the way for a while.
-
ClassDescriptionDiscovers the
MemberCapabilitiesof theServiceInstances reported by Spring Cloud Discovery, and publishes this application's own.ACapabilityDiscoveryModethat delegates to another, and stops asking an instance for itsMemberCapabilitiesfor a while once that instance answers with a client error.What a member of the cluster reports about itself when asked: who it is, and what it handles.Serves this application's owncapabilitiesover HTTP, so that other members of the cluster can learn which commands and queries this one handles.The wire representation of a member'sMemberAdvertisement: its node id and itsMemberCapabilities, as served byMemberCapabilitiesControllerand read byRestCapabilityDiscoveryMode.ACapabilityDiscoveryModethat asks eachServiceInstancefor itsMemberCapabilitiesover HTTP, against the endpoint served byMemberCapabilitiesController.Indicates aServiceInstanceanswered a request for itscapabilitieswith a client error.An identity for aServiceInstancethat can safely be used as a map key.