SpringCloud入门教学|第一篇:服务的注册和发现(Eureka)
2018-02-22 14:59
1086 查看
创建项目
创建我们的服务注册中心
创建一个服务提供者eureka client
spring cloud 为开发人员提供了快速构建分布式系统的一些工具,包括配置管理、服务发现、断路器、路由、微代理、事件总线、全局锁、决策竞选、分布式会话等等。它运行环境简单,可以在开发人员的电脑上跑。
SpringCloud中文教程文档
创建项目步骤
创建我们需要的项目内容,创建了基本的maven的SpringBoot后,我们在主工程下创建2个model:右键工程->创建model->选择spring initialir如下所示
这里我们使用的语言为Kotlin ,(这里我一个用了Kotlin另一个采用java)
此处我们声明我们需要的Eureka的支持
创建如下
现在我们来进行设置我们的pom.xml 首先我们在我们的父pom中定义我们的子模块
接下来我们在子模块中指定我们的父POM
采用这种maven进行管理,公用的jar可以放在父pom中。
注意:因为采用的java 9的版本因此需要增加如下的jar,避免出现未发现javabind的问题。
当我们运行我们的server model后,我们可以通过浏览器访问:http://localhost:8761
但是这里我已经注册了一个提供者
注意: spring.application.name 上的注解很重要,这个名字是调用时候需要知道的。
接下来我们可以通过http://localhost:8762/hello?name=houshuai 进行访问。
源码下载:
https://github.com/houshuai0816/SpringCloudDemo
创建我们的服务注册中心
创建一个服务提供者eureka client
spring cloud 为开发人员提供了快速构建分布式系统的一些工具,包括配置管理、服务发现、断路器、路由、微代理、事件总线、全局锁、决策竞选、分布式会话等等。它运行环境简单,可以在开发人员的电脑上跑。
SpringCloud中文教程文档
创建项目
本项目采用Intellij进行创建,以一个maven主工程附带2个model 分别为 Eureka Server 和 Eureka client创建项目步骤
创建我们需要的项目内容,创建了基本的maven的SpringBoot后,我们在主工程下创建2个model:右键工程->创建model->选择spring initialir如下所示
这里我们使用的语言为Kotlin ,(这里我一个用了Kotlin另一个采用java)
此处我们声明我们需要的Eureka的支持
创建如下
现在我们来进行设置我们的pom.xml 首先我们在我们的父pom中定义我们的子模块
<!-- 指定子目录 --> <modules> <module>eureka_client</module> <module>eureka_server</module> </modules>
接下来我们在子模块中指定我们的父POM
<!-- 指定父pom --> <parent> <groupId>com.example</groupId> <artifactId>springcloud</artifactId> <version>0.0.1-SNAPSHOT</version> <relativePath>../pom.xml</relativePath> </parent>
采用这种maven进行管理,公用的jar可以放在父pom中。
注意:因为采用的java 9的版本因此需要增加如下的jar,避免出现未发现javabind的问题。
<dependency> <groupId>javax.xml.bind</groupId> <artifactId>jaxb-api</artifactId> <version>2.3.0</version> </dependency> <dependency> <groupId>com.sun.xml.bind</groupId> <artifactId>jaxb-impl</artifactId> <version>2.3.0</version> </dependency> <dependency> <groupId>org.glassfish.jaxb</groupId> <artifactId>jaxb-runtime</artifactId> <version>2.3.0</version> </dependency> <dependency> <groupId>javax.activation</groupId> <artifactId>activation</artifactId> <version>1.1.1</version> </dependency>
创建我们的服务注册中心
@SpringBootApplication @EnableEurekaServer class EurekaServerApplication fun main(args: Array<String>) { SpringApplication.run(EurekaServerApplication::class.java, *args) }
@EnableEurekaServer这个注解表示 此项目作为服务的注册中心。 在默认情况下erureka server也是一个eureka client 。必须必指定一个server。 接下来我们看如何配置我们的application.properties
server.port=8761 # 通过eureka.client.registerWithEureka:false和fetchRegistry:false来表明自己是一个eureka server. eureka.client.register-with-eureka=false eureka.client.fetch-registry=false eureka.instance.hostname=localhost eureka.client.service-url.defaultZone= http://${eureka.instance.hostname}:${server.port}/eureka/
当我们运行我们的server model后,我们可以通过浏览器访问:http://localhost:8761
但是这里我已经注册了一个提供者
创建一个服务提供者(eureka client)
@RestController @EnableEurekaClient @SpringBootApplication public class EurekaClientApplication { @Value("${server.port}") String port; @RequestMapping("/hello") public String home(@RequestParam String name) { return "hi "+name+",I am from port:" +port; } public static void main(String[] args) { SpringApplication.run(EurekaClientApplication.class, args); } }
@EnableEurekaClient表明自己是一个EurekaClient,同时我们需要在application.porperties进行配置
server.port=8762 eureka.client.service-url.defaultZone: http://localhost:8761/eureka/ # 重点需要注意spring.application.name,这个是在以后服务与服务之间相互调用是根据这个name spring.application.name=service-hi
注意: spring.application.name 上的注解很重要,这个名字是调用时候需要知道的。
接下来我们可以通过http://localhost:8762/hello?name=houshuai 进行访问。
源码下载:
https://github.com/houshuai0816/SpringCloudDemo
相关文章推荐
- SpringCloud 教程 | 第一篇: 服务的注册与发现(Eureka)
- SpringCloud 学习 | 第一篇: 高可用的服务注册与发现(Eureka)
- SpringCloud 教程 | 第一篇: 服务的注册与发现(Eureka)
- Spring Cloud 入门教程 - Eureka服务注册与发现
- SpringCloud 教程 | 第一篇: 服务的注册与发现Eureka(Finchley版本)
- Spring Cloud 入门教程 - Eureka服务注册与发现
- springcloud(第一篇)springcloud eureka 服务注册与发现
- SpringCloud 教程 | 第一篇: 服务的注册与发现(Eureka)
- SpringCloud构建微服务入门架构(二)服务注册与发现Eureka集群搭建
- Spring Cloud Eureka 服务注册与发现中心(一)
- springcloud eureka服务注册与发现
- Spring Cloud构建微服务架构:服务注册与发现(Eureka、Consul)【Dalston版】
- spring-cloud入门之eureka-client(服务注册)
- SpringCloud--Eureka服务注册和发现
- 《Spring Cloud Netflix》-- 服务注册和服务发现-Eureka的服务认证和集群
- Spring Cloud Netflix Eureka组件服务注册及发现源码浅析
- Spring Cloud Spring Boot mybatis 企业分布式微服务云(一)服务注册与发现(Eureka)【Dalston版】
- SpringCloud服务的注册与发现(Eureka)
- SpringCloud——Eureka服务注册和发现
- springcloud(第三篇)springcloud eureka 服务注册与发现 *****