spring cloud服务注册之Eureka Server – DEMO
在之前章节中介绍了Eureka Server的启动流程, 该篇文章主要实现一个eureka server的简单demo, 便于在本地做调试。
记录编程路上的点点滴滴
在之前章节中介绍了Eureka Server的启动流程, 该篇文章主要实现一个eureka server的简单demo, 便于在本地做调试。
在之前章节spring cloud 服务发现之Eureka Client(三)—DiscoveryClient 中介绍了Eureka 客户端在启动过程中的流程,在DiscoveryClient启动过程中,会有两个重要的定时任务:
在上篇文章spring cloud 服务发现之Eureka Client(二)—自动装配中,介绍了Eureka Client自动装配的过程,其中设计到几个比较重要的类,包括ServiceRegistry, EurekaClient, EurekaDiscoveryClient类型。这些类型在Eureka Client整个生命周期中充当这比较重要的角色,在今天这章节中,将主要介绍DiscoveryClient对象,该对象主要包括了一下几个步骤:
在spring cloud 服务发现之Eureka Client(一)—客户端配置DEMO章节中介绍了如何快速的启动一个Eureka Client, 并将当前服务信息注册到Eureka Server中。在这篇文章中,将主要介绍在Eureka Client自动状态的过程中,需要执行那些过程,那些类是在启动过程中比不可少了。
这篇文章主要通过DEMO的方式启动一个微服务,并将服务注册到Eureka Server. Eureka Server为本地启动的服务信息,可以通过之前的文章查看启动过程,以及启动原理。
Eureka Server本身在做服务注册时,客户端是否下线,是通过客户端向服务端发送心跳信息, 服务端一次来保证客户端处于UP状态。同时当客户端心跳发送失败时,这是服务端将通过自身的剔除策略,将处于DOWN状态下的服务从Registry中进行移除,保证服务可用性。
通过前面章节的介绍, 可以明确知道在InstanceRegistry初始化的时候, 会初始化ResponseCacheImpl的类,而这个类就是对于三级缓存的重要实现. 这章节主要介绍三级缓存的工作原理,以代码的形式明确三级缓存的实现。
在前面的文章中,介绍了Eureka Server的启动流程,以及启动过程中执行的操作信息。本章将会介绍服务注册相关的实现。服务注册中主要介绍Instance信息通过register的方式保存到Registry的业务逻辑,以及如何实现数据同步。
在Eureka Server自动装配文章中,介绍了Eureka相关的启动组件,这篇文章主要介绍在启动过程中,各组件都是如何工作的。
在微服务开发过程中,始终少不了注册中心的存在,注册中心提供了服务的注册与发现机制,能够不需要代码改动,实现服务的横向扩展,同时也为微服务之间的调用解耦,避免了服务调用之间的高度依赖。本文主要从源码的角度出发,对spring-cloud-netflex-eureka-server中的源码进行解读,学习eureka中服务注册实现逻辑.