# eureka
**Repository Path**: zgcmark/eureka
## Basic Information
- **Project Name**: eureka
- **Description**: AWS Service registry for resilient mid-tier load balancing and failover.
- **Primary Language**: Java
- **License**: Apache-2.0
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2019-07-23
- **Last Updated**: 2020-12-19
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
#模块一 eureka-client
eureka-client模块中 有两个目录结构
1.appinfo 主要是配置项相关的信息,节点的上下文信息(appname,namespace,)和一些这配置文件子的参数
2.discovery 主要是跟客户端的注册 与服务发现相关
##appinfo
###ApplicationInfoManager
1.EurekaInstanceConfig 主要是一些配置属性信息,重要的如 续约时间 之类的,他有一个默认的实现com.netflix.appinfo.AbstractInstanceConfig,我们常见的默认续约时间30s之类的东西都在这个默认实现里面,我们在使用中可以使用配置文件进行修改主要是这个类在起作用(com.netflix.appinfo.PropertiesInstanceConfig),这个文件会从配置文件中去读取配置,然后替换默认的配置
2.PropertiesInstanceConfig 读取配置文件中的信息
3*.InstanceInfo 应用实例信息。Eureka-Client 向 Eureka-Server 注册该对象信息。注册成功后,可以被其他 Eureka-Client 发现。
(1).com.netflix.appinfo.providers.EurekaConfigBasedInstanceInfoProvider,基于 EurekaInstanceConfig 创建 InstanceInfo 的工厂。
4. com.netflix.appinfo.ApplicationInfoManager,应用信息管理器。
生成公式 EurekaInstanceConfig-->生成InstanceInfo-->生成ApplicationInfoManager
接下来需要合成的是EurekaClient EurekaClient=生成ApplicationInfoManager+EurekaClientConfig
###EurekaClientConfig
写不动了,直接看代码里面的注释吧