继上一篇文章阐述《Eureka在微服务架构中的重要性》之后,今天我们来探讨下基于springboot开发的微服务,在启动过程中是如何加载eureka的。
无论是启动类Main或者Application,通常都会带有@SpringbootCloudApplication或者@SpringBootApplication注解。
接下来,我们先来看下这两个注解的区别。
@SpringCloudApplication
@Target(ElementType.TYPE) // 指定此注解只能应用于类或接口上。
@Retention(RetentionPolicy.RUNTIME) // 表示此注解在运行时仍然有效
@Documented // 表明此注解会被包含在Javadoc文档中
@Inherited // 子类可以继承父类上的该注解
@SpringBootApplication
@EnableDiscoveryClient // 启用服务发现客户端功能,使应用能够注册到服务发现服务器中。
@EnableCircuitBreaker // 启用Hystrix断路器功能,用于处理服务间的依赖故障。
public @interface SpringCloudApplication {
}
@SpringBootApplication
@Target(ElementType.TYPE) // 指定此注解只能应用于类或接口上。
@Retention(RetentionPolicy.RUNTIME) // 表示此注解在运行时仍然有效
@D