Eureka相关相关接口和代码位置
1.服务注册:com.netflix.eureka.registry.AbstractInstanceRegistry#register(InstanceInfo registrant, int leaseDuration, boolean isReplication)
对客户端提供资源接口:com.netflix.eureka.resources.ApplicationResource#addInstance(InstanceInfo info,@HeaderParam(PeerEurekaNode.HEADER_REPLICATION) String isReplication)
2.注册中心数据同步:com.netflix.eureka.registry.PeerAwareInstanceRegistryImpl#syncUp
3.服务取消对客户端的资源接口:com.netflix.eureka.resources.InstanceResource#cancelLease(@HeaderParam(PeerEurekaNode.HEADER_REPLICATION) String isReplication)
4.服务剔除:com.netflix.eureka.registry.AbstractInstanceRegistry#evict(long)
服务剔除,续约定时任务:com.netflix.eureka.registry.AbstractInstanceRegistry#postInit
5.服务续约:com.netflix.eureka.resources.InstanceResource#renewLease
6.客户端注册列表拉取:com.netflix.discovery.DiscoveryClient#fetchRegistry(boolean)
7.客户端注册:com.netflix.discovery.DiscoveryClient#register
8.ribbon更新本地缓存服务列表:com.netflix.loadbalancer.DynamicServerListLoadBalancer#updateListOfServers
9.ribbon去eureka拉取实例列表:com.netflix.niws.loadbalancer.DiscoveryEnabledNIWSServerList#obtainServersViaDiscovery