一、依赖分析
查看build.gradle看到,eureka-server主要依赖了eureka-client和eureka-core2个项目,jersey框架和jetty容器
二、代码结构分析
通过看eureka-server的代码结构,能够看出这是一个web工程,包含了3个properties配置文件,分别是server端配置、client端配置和日志配置,
web.xml是整个项目的入口
三、web.xml分析
web.xml分为3部分内容,首先是项目的入口,也就是 EurekaBootStrap 这个类
中间这部分是一些自定义的过滤器和 jersey框架的核心过滤器
最后就是web工程的欢迎页面
四、server端初始化过程
4.1 初始化eureka项目环境
4.1.1 初始化数据中心,如果没配置就取默认值 default(ConfigurationManager 通过 double check 去获取单例对象)
4.1.2 初始化运行环境,如果没配置就取默认值 test
4.2 初始化eureka上下文环境
4.2.1 初始化默认的eurekaServerConfig对象(加载eureka-server.properties文件)
4.2.2 初始化eurekaClient对象,eureka-server本身依赖eureka-client项目,在初始化的时候会启动一个client,用于向集群中的其他server节点注册,同步信息用
4.2.3 构建实例注册信息,用来完成注册、状态更新等操作,这个并不是注册表!!!
4.2.4 构建eureka节点信息
4.2.5 构建eureka上下文信息
4.2.6 对构建好的上下文进行初始化操作
4.2.7 同步注册表信息,开始接收请求
4.2.8 注册监听器
到这,eureka-server的初始化就算是完成了
标签:初始化,web,4.2,eureka,client,server From: https://www.cnblogs.com/ming00321/p/17073319.html