Class InstanceRegistry
java.lang.Object
com.netflix.eureka.registry.AbstractInstanceRegistry
com.netflix.eureka.registry.PeerAwareInstanceRegistryImpl
org.springframework.cloud.netflix.eureka.server.InstanceRegistry
- All Implemented Interfaces:
com.netflix.discovery.shared.LookupService<String>,com.netflix.eureka.lease.LeaseManager<com.netflix.appinfo.InstanceInfo>,com.netflix.eureka.registry.InstanceRegistry,com.netflix.eureka.registry.PeerAwareInstanceRegistry,org.springframework.beans.factory.Aware,org.springframework.context.ApplicationContextAware
public class InstanceRegistry
extends com.netflix.eureka.registry.PeerAwareInstanceRegistryImpl
implements org.springframework.context.ApplicationContextAware
- Author:
- Spencer Gibb, Wonchul Heo
-
Nested Class Summary
Nested classes/interfaces inherited from class com.netflix.eureka.registry.PeerAwareInstanceRegistryImpl
com.netflix.eureka.registry.PeerAwareInstanceRegistryImpl.Action -
Field Summary
Fields inherited from class com.netflix.eureka.registry.PeerAwareInstanceRegistryImpl
eurekaClient, peerEurekaNodesFields inherited from class com.netflix.eureka.registry.AbstractInstanceRegistry
allKnownRemoteRegions, clientConfig, expectedNumberOfClientsSendingRenews, lock, numberOfRenewsPerMinThreshold, overriddenInstanceStatusMap, regionNameVSRemoteRegistry, responseCache, serverCodecs, serverConfig -
Constructor Summary
ConstructorsConstructorDescriptionInstanceRegistry(com.netflix.eureka.EurekaServerConfig serverConfig, com.netflix.discovery.EurekaClientConfig clientConfig, com.netflix.eureka.resources.ServerCodecs serverCodecs, com.netflix.discovery.EurekaClient eurekaClient, com.netflix.eureka.transport.EurekaServerHttpClientFactory eurekaServerHttpClientFactory, int expectedNumberOfClientsSendingRenews, int defaultOpenForTrafficCount) -
Method Summary
Modifier and TypeMethodDescriptionbooleanprotected booleaninternalCancel(String appName, String id, boolean isReplication) voidopenForTraffic(com.netflix.appinfo.ApplicationInfoManager applicationInfoManager, int count) IfPeerAwareInstanceRegistryImpl.openForTraffic(ApplicationInfoManager, int)is called with a zero argument, it means that leases are not automatically cancelled if the instance hasn't sent any renewals recently.voidregister(com.netflix.appinfo.InstanceInfo info, boolean isReplication) voidregister(com.netflix.appinfo.InstanceInfo info, int leaseDuration, boolean isReplication) booleanvoidsetApplicationContext(org.springframework.context.ApplicationContext context) Methods inherited from class com.netflix.eureka.registry.PeerAwareInstanceRegistryImpl
deleteStatusOverride, getInstanceInfoOverrideRule, getLocalRegistrySize, getNextServerFromEureka, getNumOfReplicationsInLastMin, getReplicaNodes, getSortedApplications, init, isBelowRenewThresold, isLeaseExpirationEnabled, isLeaseExpirationEnabledMetric, isRegisterable, isSelfPreservationModeEnabled, isSelfPreservationModeEnabledMetric, shouldAllowAccess, shouldAllowAccess, shouldAllowAccessMetric, shutdown, statusUpdate, statusUpdate, syncUpMethods inherited from class com.netflix.eureka.registry.AbstractInstanceRegistry
clearRegistry, evict, evict, getApplication, getApplication, getApplicationDeltas, getApplicationDeltasFromMultipleRegions, getApplications, getApplications, getApplicationsFromAllRemoteRegions, getApplicationsFromLocalRegionOnly, getApplicationsFromMultipleRegions, getInstanceByAppAndId, getInstanceByAppAndId, getInstancesById, getInstancesById, getLastNCanceledInstances, getLastNRegisteredInstances, getNumberofElementsininstanceCache, getNumOfRenewsInLastMin, getNumOfRenewsPerMinThreshold, getOverriddenInstanceStatus, getResponseCache, initializedResponseCache, initRemoteRegionRegistry, overriddenInstanceStatusesSnapshot, postInit, storeOverriddenStatusIfRequired, storeOverriddenStatusIfRequired, updateRenewsPerMinThresholdMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface com.netflix.eureka.registry.InstanceRegistry
clearRegistry, getApplication, getApplicationsFromLocalRegionOnly, getInstanceByAppAndId, getInstanceByAppAndId, getLastNCanceledInstances, getLastNRegisteredInstances, getNumOfRenewsInLastMin, getNumOfRenewsPerMinThreshold, getResponseCache, initializedResponseCache, overriddenInstanceStatusesSnapshot, storeOverriddenStatusIfRequired, storeOverriddenStatusIfRequiredMethods inherited from interface com.netflix.eureka.lease.LeaseManager
evictMethods inherited from interface com.netflix.discovery.shared.LookupService
getApplication, getApplications, getInstancesById
-
Constructor Details
-
InstanceRegistry
public InstanceRegistry(com.netflix.eureka.EurekaServerConfig serverConfig, com.netflix.discovery.EurekaClientConfig clientConfig, com.netflix.eureka.resources.ServerCodecs serverCodecs, com.netflix.discovery.EurekaClient eurekaClient, com.netflix.eureka.transport.EurekaServerHttpClientFactory eurekaServerHttpClientFactory, int expectedNumberOfClientsSendingRenews, int defaultOpenForTrafficCount)
-
-
Method Details
-
setApplicationContext
public void setApplicationContext(org.springframework.context.ApplicationContext context) throws org.springframework.beans.BeansException - Specified by:
setApplicationContextin interfaceorg.springframework.context.ApplicationContextAware- Throws:
org.springframework.beans.BeansException
-
openForTraffic
public void openForTraffic(com.netflix.appinfo.ApplicationInfoManager applicationInfoManager, int count) IfPeerAwareInstanceRegistryImpl.openForTraffic(ApplicationInfoManager, int)is called with a zero argument, it means that leases are not automatically cancelled if the instance hasn't sent any renewals recently. This happens for a standalone server. It seems like a bad default, so we set it to the smallest non-zero value we can, so that any instances that subsequently register can bump up the threshold.- Specified by:
openForTrafficin interfacecom.netflix.eureka.registry.InstanceRegistry- Overrides:
openForTrafficin classcom.netflix.eureka.registry.PeerAwareInstanceRegistryImpl
-
register
public void register(com.netflix.appinfo.InstanceInfo info, int leaseDuration, boolean isReplication) - Specified by:
registerin interfacecom.netflix.eureka.lease.LeaseManager<com.netflix.appinfo.InstanceInfo>- Overrides:
registerin classcom.netflix.eureka.registry.AbstractInstanceRegistry
-
register
public void register(com.netflix.appinfo.InstanceInfo info, boolean isReplication) - Specified by:
registerin interfacecom.netflix.eureka.registry.PeerAwareInstanceRegistry- Overrides:
registerin classcom.netflix.eureka.registry.PeerAwareInstanceRegistryImpl
-
cancel
- Specified by:
cancelin interfacecom.netflix.eureka.lease.LeaseManager<com.netflix.appinfo.InstanceInfo>- Overrides:
cancelin classcom.netflix.eureka.registry.PeerAwareInstanceRegistryImpl
-
renew
- Specified by:
renewin interfacecom.netflix.eureka.lease.LeaseManager<com.netflix.appinfo.InstanceInfo>- Overrides:
renewin classcom.netflix.eureka.registry.PeerAwareInstanceRegistryImpl
-
internalCancel
- Overrides:
internalCancelin classcom.netflix.eureka.registry.AbstractInstanceRegistry
-