Spring-Cloud-Netflix
葩_
这个作者很懒,什么都没留下…
展开
-
Eureka 学习笔记(七)EurekaServerContext初始化(6)- EurekaClient创建过程精读
EurekaClient创建过程精读 承接上一篇,我们来到了DiscoveryClient(ApplicationInfoManager applicationInfoManager, EurekaClientConfig config, AbstractDiscoveryClientOptionalArgs args, Provider<BackupRegistry> backupRegistryProvider, EndpointRandomi原创 2020-08-27 16:24:09 · 304 阅读 · 0 评论 -
Eureka 学习笔记(七)EurekaServerContext初始化(5)- EurekaClient创建过程概览
一、创建EurekaClientConfig 这里也是很之前一样,去读取eureka.client.properties文件里面的配置,加载到EurekaClientConfig内部。EurekaClientConfig eurekaClientConfig = new DefaultEurekaClientConfig();public DefaultEurekaClientConfig() { this(CommonConstants.DEF原创 2020-08-27 16:22:26 · 333 阅读 · 0 评论 -
Eureka 学习笔记(七)EurekaServerContext初始化(3)- EurekaServerConfig创建过程
EurekaServerConfig创建过程 这一篇我们来看看EurekaServerConfig是如何创建的。只看重点~EurekaServerConfig eurekaServerConfig = new DefaultEurekaServerConfig(); 这里创建了一个DefaultEurekaServerConfig实现类,点进去看看~private static final String原创 2020-08-27 11:22:22 · 359 阅读 · 0 评论 -
Eureka 学习笔记(七)EurekaServerContext初始化(4)- ApplicationInfoManager创建过程
零、前言 有几个步骤比较简单,且和主流程关系不大,就一起看了。一、注册JSON、XML数据流转换器 这里的代码很简单,就是创建了两个转换器,然后保存到了一个底层的PrioritizedList数据结构中。JsonXStream.getInstance().registerConverter(new V1AwareInstanceInfoConverter(), XStream.PRIORITY_VERY_HI原创 2020-08-27 11:23:51 · 250 阅读 · 0 评论 -
Eureka 学习笔记(七)EurekaServerContext初始化(2)- initEurekaServerContext流程大体观察
initEurekaServerContext流程大体观察 这里用原生的Eureka来讲解,毕竟Spring-Cloud的分散的到处都是,不好观察。 步骤就写在代码里面了,注意观察哟。protected void initEurekaServerContext() throws Exception { // 第一步:读取EurekaServer的配置文件 EurekaServerConfig e原创 2020-08-26 17:53:12 · 353 阅读 · 0 评论 -
Eureka 学习笔记(七)EurekaServerContext初始化(1)- 原生Eureka对比Spring-Cloud-Netfix-Eureka
一、原生Eurekaprotected void initEurekaServerContext() throws Exception { EurekaServerConfig eurekaServerConfig = new DefaultEurekaServerConfig(); // For backward compatibility JsonXStream.getInstance().registerConverter(new V1AwareInstanceInfoCo原创 2020-08-26 17:52:06 · 161 阅读 · 0 评论 -
Eureka 学习笔记(六)Eureka初始化环境
一、前言 无论是原生Eureka还是SpringCloud中对Eureka的整合,逻辑是一样的,只是在SpringCloud中将很多组件的创建移到AutoConfiguration中去了,如果有设计到的地方,笔者在以后的学习笔记中会提到。二、contextInitialized方法 承接我们发现的contextInitialized方法,我们来看看其内部做了什么。大致可以发现,它是从ConfigurationM原创 2020-08-26 13:35:23 · 284 阅读 · 1 评论 -
Eureka 学习笔记(五)Spring-Cloud-Netflix-Eureka-Server启动入口寻找
一、先看看@EnableEurekaServer注解 老规矩,用过Spring-Cloud-Netflix-Eureka的都知道,想要用Eureka,要先在启动类上加上@EnableEurekaServer注解,Spring-Cloud会自动注入Eureka-Server相关的内容。@Target(ElementType.TYPE)@Retention(RetentionPolicy.RUNTIME)@Documented@Import(EurekaS原创 2020-08-26 10:44:39 · 570 阅读 · 0 评论 -
Eureka 学习笔记(四)原生Eureka-Server启动入口寻找
一、先去GitHub上下载源码,瞄一眼目录结构。 根据笔者小学的英文水平加上百度大概看出来,分为code核心模块、client客户端模块、server服务端模块、resource资源模块、examples用例、utils工具包几个模块吧。。 接着又发现了有这么几个三级项目名archaius2、jersey2、governator。经过再一次的百度查询,发现governator是一个用来增强 Google Gui原创 2020-08-26 10:39:29 · 239 阅读 · 0 评论 -
Eureka 学习笔记(三)Spring-Cloud-Netfix-Eureka监听器
一、Spring-Cloud-Netfix-Eureka的5大监听器EurekaRegistryAvailableEvent 服务器可用时触发EurekaServerStartedEvent 服务器启动时触发EurekaInstanceRegisteredEvent 服务注册时触发EurekaInstanceRenewedEvent 服务续约时触发EurekaInstanceCanceledEvent 服务下线时触发二、笔者是怎么找到这5个监听器的,以及是怎么去寻找他们调用的方法。首先原创 2020-08-26 10:36:35 · 269 阅读 · 0 评论 -
Eureka 学习笔记(二)Eureka常用配置项
零、前言目前这些是笔者自己知道的一些配置,后续看到某些地方的时候,也许会加上的吧。。一、客户端配eureka.client.fetch-registry:是否去注册中心获取其他服务地址,默认true,单机版的时候配置成falseeureka.client.register-with-eureka:是否向服务器注册自己,默认true,单机版的时候配置成falseeureka.instance.hostnameeureka服务器主机名称eureka.client.service-url.de原创 2020-08-26 10:34:10 · 287 阅读 · 0 评论 -
Eureka 学习笔记(一)Eureka简介
零、前言本次记录的Spring-Cloud-Eureka版本为2.2.3,Eureka版本为1.9.21。都是看到什么地方写到什么地方,不要在意目录顺序- -!所有文章都有可能不定期更新。一、什么是EurekaEureka是一个支持分布式的、AP模型的、使用http请求通讯的注册中心。二、为什么要用注册中心当你的项目微服务化以后,并且数量很多的时候,你不可能手动来管理每个服务器的IP地址,这个时候就需要一个注册中心统一来管理。...原创 2020-08-26 10:32:59 · 163 阅读 · 0 评论 -
ribbon学习笔记(三)RibbonLoadBalancerClient的execute是怎么执行的?如何获得一个ILoadBalancer
一、先看下整体代码public <T> T execute(String serviceId, LoadBalancerRequest<T> request) throws IOException { return execute(serviceId, request, null);}public <T> T execute(String serviceId, LoadBalancerRequest<T> request, Object hint原创 2020-07-23 15:53:59 · 1921 阅读 · 1 评论 -
ribbon学习笔记(二)LoadBalancerInterceptor的处理逻辑
上一篇讲到,Ribbon与Spring-Cloud整合以后,会给RestTemplate加上一个LoadBalancerInterceptor的拦截器,那么现在就来看看LoadBalancerInterceptor里面的逻辑吧~话不多说,先上代码:package org.springframework.cloud.client.loadbalancer;import java.io.IOException;import java.net.URI;i原创 2020-07-23 14:37:40 · 1205 阅读 · 0 评论 -
ribbon学习笔记(一)通过@LoadBalanced查询Ribbon是如何与SpringCloud整合的
首先用过Ribbon的都知道,要想在Spring-Cloud中使用Ribbon,需要在RestTemplate Bean上加入@LoadBalanced注解。那么我们可以先看看@LoadBalanced(代码如下)。package org.springframework.cloud.client.loadbalancer;import java.lang.annotation.Documented;import java.lang.annotation原创 2020-07-23 10:15:57 · 319 阅读 · 0 评论