Spring Cloud 源码分析之 Eureka 篇第一章:准备工作
欢迎访问我的 GitHub
这里分类和汇总了欣宸的全部原创(含配套源码):https://github.com/zq2599/blog_demos
大家好,从本章开始我们一起进入 SpringCloud 的源码世界,通过源码分析再结合实战,一起加深对 SpringCloud 体系的认识;
全文概览
本章是为后续的深度学习做准备工作,主要包含以下两部分:
开发三个简单应用,包括:注册中心、服务提供方、服务消费方,后续研究和实战都在这三个应用基础上进行;
下载后续分析研究中用到的源码,包括 SpringCloud 和 Netflix 的,版本和三个简单应用的一致;
版本列表
JDK:1.8;
spring boot:1.5.9.RELEASE;
spring cloud:Edgware.RELEASE;
应用简介
用列表简介本章要开发的三个应用:
实战源码下载
稍后会详细介绍这三个应用的开发和测试步骤,您也可以在 github 下载这三个应用的源码,地址和链接信息如下表所示:
这个 git 项目中有多个文件夹,本章源码分别在 springclouddeepeureka、springclouddeepprovider、springclouddeepconsumer 这三个文件夹下,如下图红框所示:
接下来准备 demo 工程吧,先从 Eureka 开始:
Eureka 应用
基于 maven 创建一个 spring boot 的 web 应用 springclouddeepeureka,pom.xml 内容如下:
resources 目录下创建配置文件 application.yml,内容如下:
启动类 SpringclouddeepeurekaApplication.java 中,添加注解**@EnableEurekaServer**:
启动应用,浏览器访问 8081 端口,可见 Eureka 页面如下图:
至此,注册中心启动成功;
服务提供者
基于 maven 创建一个 spring boot 的 web 应用 springclouddeepprovider,pom.xml 内容如下:
resources 目录下创建配置文件 application.yml,内容如下:
启动类 SpringclouddeepproviderApplication.java 中,添加注解**@EnableDiscoveryClient**:
创建一个 Controller 类,用于提供 http 服务:
启动应用,浏览器访问路径:http://localhost:8082/hello/123 ,可收到 server 端响应如下图:
此时去刷新 Eureka 的页面,发现服务已经注册成功了,如下图:
至此,服务提供方应用开发完毕,最后一个是服务消费方 springclouddeepconsumer;
服务消费方
基于 maven 创建一个 spring boot 的 web 应用 springclouddeepconsumer,pom.xml 内容如下:
resources 目录下创建配置文件 application.yml,内容如下:
启动类 SpringclouddeepconsumerApplication.java 中,添加注解**@EnableDiscoveryClient**:
创建一个 Controller 类,用于提供 http 服务:
启动应用,浏览器访问路径:http://localhost:8083/consume/tom,可收到 server 端响应如下图:
再试试获取服务信息的接口:http://localhost:8083/serviceinfo,可以看到服务信息:
此时去刷新 Eureka 的页面,发现两个应用都已注册成功,如下图:
至此,服务消费方应用开发完毕,后续的章节中,我们的分析和实战都在这三个应用上进行;
Spring Cloud 源码下载
简单说说如何在 GitHub 下载对应版本的 Spring Cloud 源码:
Spring Cloud 的 GitHub 主页:https://github.com/spring-cloud;
假设我要下载的是子工程 spring-cloud-commons 的源码,版本号 1.3.0-RELEASE,点击下图红框中的链接:
在 spring-cloud-commons 工程主页中,点击下图红框中的"releases"链接:
如下图,这里有多个 release 版本,挑选您所需的版本,点击红框中的链接即可下载源码:
Netflix 源码下载
Netflix 源码地址:https://github.com/Netflix ,后面的章节中,我们会按需要来这里下载对应的 release 版本源码;
至此,咱们的准备工作已经完成,接下来一起去探索精彩的 Spring Cloud 世界吧;
欢迎关注 InfoQ:程序员欣宸
版权声明: 本文为 InfoQ 作者【程序员欣宸】的原创文章。
原文链接:【http://xie.infoq.cn/article/600078a8a84b2e312e5365dc3】。文章转载请联系作者。
评论