Spring Cloud微服务实战
发布时间:2018-03-13编辑:caoww阅读(690)
Spring Cloud微服务构建 :Spring Boot

Spring Boot的基础结构分为三大块
src/main/java: 主程序入口 通过直接运行RegistryApplication,可以启动Spring Boot应用
src/main/resources: 配置目录
src/test/ 单元测试目录
实现Restful API
在Spring Boot中创建一个Resultful API的实现代码同Spring MVC应用一样,只是不需要像SpringMVC那样先做很多配置,
而是想下面这样直接开始编写Controller内容:
@RestController
public class HelloController{
@RequestMapping("/hello")
public String index(){
return "Hello World";
}
}
启动该应用,通过浏览器访问http://localhost:8080/hello
可以返回预期的结果 : hello world.
启动Spring Boot应用方法
备注: 如果需要设置启动端口除了在配置文件中指定
还可以通过java -jar xxx.jar --server.port=8888 直接通过命令的形式设置server.port属性
同理 --spring.profiles.active=prod
加载顺序
在命令行中传入参数
SPRING_APPLICATION_JSON 中的属性。 它是以JSON格式配置在心痛环境变量中的内容
java:comp/env 中的JNDI 属性
Java 的系统属性, 可以通过system.getproperties()获得的内容
操作系统的环境变量
通过 random.* 配置的随机属性
位于当前应该 jar 包之外 针对不同{profile}环境的配置文件内容
位于当前应用jar 包之内, 针对不同的{profile}环境的配置文件内容
位于当前应用jar包之外的,application.properties和YAML配置内容
位于当前应用jar包之内的application。properties和YAML配置内容
在@Configuration 注解修改的类中 通过@propertySource注解定义的属性
应用默认属性 使用springApplication.setDefaultProperties 定义的内容
优先级按上面的顺序由高到低 数字越小优先级越高
服务治理: Spring Cloud Eureka
构建服务注册中心
服务注册和服务发现
Eureka 的基础架构
Eureka 的服务治理机制
Eureka 的配置
服务治理
包括服务注册和服务发现
服务注册:在服务治理框架中 ,通常会构建一个注册中心,每个服务单元向注册中心登记自己提供的服务,将主机和端口
版本号,通信协议等一些附加的信息告知注册中心,注册中心按服务名分类组织服务清单。
服务发现:由于在服务治理框架下运作,服务间的调用不再通过制定具体的实例地址来实现,而是通过向服务名发起请求调用
实现。所以,服务调用方在调用服务提供方接口的时候,并不知道具体的服务实例的位置。因此,调用方需要向服务注册中心
咨询服务,并且获取所有服务的是咧清单,以实现对具体服务实例的访问。
Netflix Eureka
通过@EnableEurekaServer 注解启动一个服务注册中心 提供给其他应该对话。
Instances currently registered with Eureka
这个为空 则说明该注册中心还没有注册任何服务