Spring Cloud原理分析及使用<一>
来源:互联网 发布:mac上玩dota2 编辑:程序博客网 时间:2024/06/05 09:19
spring cloud Eureka使用实例
spring cloud 是基于spring boot实现的微服务架构开发工具,他为微服务中设计的配置管理、服务治理、断路器、智能路由、微代理、控制总线、全局锁、决策精选、分布式会话和集群状态管理等操作提供了一套简单的开发方式。
spring cloud eureka 我们可以把它看做cloud生态中的一个组成部分,它主要的职责是服务治理。
学习一个事物最简单的方式就是使用它,那么,我们从搭建一个实例开始入手,看看如何搭建spring cloud eureka
先说明下有两类角色:1,server 2,client
相对于注册中心来说,只有注册中心的实例为服务端,其余(服务提供方和客户端)均为client端。
1.新建spring boot应用,添加spring cloud eureka server组件,可以在生成的pom文件中添加,当然也可以在新建应用时指定,如:
(如果是注册中心则选在Eureka Server,如果是服务中心或者是client端则选择Eureka Discovery)
生成的pom文件:
@EnableEurekaClient@SpringBootApplicationpublic class EurekaserverApplication { public static void main(String[] args) { SpringApplication.run(EurekaserverApplication.class, args); }}
3.修改properties文件或yml文件
如果是注册中心实例则添加
server.port=8082
eureka.instance.hostname=localhost
eureka.client.register-with-eureka=false
eureka.client.fetch-registry=false
eureka.client.serviceUrl.defaultZone=http://
如果是client端(服务提供方或者客户端)
server.port=8083
spring.application.name=hello-service
eureka.client.serviceUrl.defaultZone=http://localhost:8082/eureka
这里详细说明下各项的配置:
注册中心:
server.port不用说,指明启动的实例端口
eureka.instance.hostname:指明该eureka实例的主机名称
eureka.client.register-with-eureka:默认情况下,该注册中心实例也会向自己注册自己,所以说,设置为false即为禁用本身的客户端注册
eureka.client.fetch-registry:注册中心的职责是负责维护实例,并不需要去检索服务,因为此处设置为false
eureka.client.serviceUrl.defaultZone:这是spring cloud的服务划分机制,后面的博客会详细讲解,在这里你可以简单理解为集群中心url地址
client:
eureka.client.serviceUrl.defaultZone:指明集群中心的地址
好了,到目前为止,一个完备的集群中心就搭建完了,
我们来分析一下构成:
1.集群注册中心 2.服务提供方 3.客户端实例
他们三者之间关系可用下列示意图表示:
开启三个实例,分别担任上述三者。
可以通过访问注册中心地址:
http://localhost:8082/(8082是注册中心实例端口),可看到如下页面
ok,至此,即完成了一套服务的搭建,麻雀虽小五脏俱全。
我们现在可以来分析回顾一下上述基础架构中的三个核心要素:
**服务注册中心:Eureka提供的服务端,提供服务注册与发现的功能,即上述的eureka-server
服务提供者:提供服务的应用。可以是spring boot的应用,也可以是其他遵循Eureka的通信机制的应用。他将自己提供的服务注册到Eureka上以供其他的应用发现
服务消费者:消费者应用从服务注册中心上面获取服务列表,从而可以知道从何处可以调用其所需的服务。
很多时候,客户端既是服务提供者也是服务消费者。
- Spring Cloud原理分析及使用<一>
- Spring Cloud原理分析及使用<二>
- spring-cloud-eureka (一) 原理分析
- Spring Cloud源码分析(一)Eureka
- Spring Cloud源码分析(一)Eureka
- Spring Cloud源码分析(一)Eureka
- Java NIO使用及原理分析 (一)
- Java NIO使用及原理分析 (一)
- Java NIO使用及原理分析 (一)
- Java NIO使用及原理分析 (一)
- Java NIO使用及原理分析 (一)
- Java NIO使用及原理分析 (一)
- Java NIO使用及原理分析 (一)
- Java NIO使用及原理分析 (一)
- Java NIO使用及原理分析 (一)
- Java NIO使用及原理分析 (一)
- Java NIO使用及原理分析 (一)
- Java NIO使用及原理分析 (一)
- SSH框架 Blob类型图片处理
- LPC1768 移植freeRTOS
- Ubuntu安装tomcat
- Java SimpleFileVisitor遍历文件夹与File遍历文件夹的速度对比
- SWD下载程序出现错误cannot access memory
- Spring Cloud原理分析及使用<一>
- Spark简介
- JavaScript call和apply的区别
- POJ3415 Common Substrings 【后缀数组 + 单调栈】
- mongo数据库的各种查询语句示例(比较全的)
- [springBoot系列]--springBoot注解大全
- python----------------正则实现计算器功能
- 插件化开发之发展历史及特性区别总结
- GRPC学习(An RPC library and framework)