Eureka 系列(01)最简使用姿态
Eureka 系列(01)最简使用姿态
Eureka 是由 Netflix 公司的服务发现中间件,包括服务发现服务器和客户端的。Spring Cloud Eureka 官网文档
0. Spring Cloud 系列目录 - Eureka 篇
1. 服务发现与发现
1.1 服务发现(Service Discovery)
服务发现:在计算机网络中,一种自动发现设备或者服务的技术,通过服务发现协议(Service Discovery Protocol)实现。常见的协议有以下几种:
- Java: Jini(Apache River)
- REST: HATEOAS
- Web Services: UDDI(Universal Description Discovery and Integration)
1.2 服务注册(Service Registration)
服务注册(Service Registration)在计算机网络中,为了更好地治理多个设备或者服务,这些设备或者服务主动或者被动注册到管理中心,以便服务被发现和消费。常见注册中心有以下几种:
- Apache Zookeeper: CAP 满足 CP 理论,高一致性,牺牲了可用性。
- Netflix Eureka: CAP 满足 AP 理论,高可用性,牺牲了高一致性。
- Consul: GO语言编写。
2. Eureka
2.1 服务端: Eureka Server
Eureka Server 是 Eureka Client 的注册服务中心,管理所有注册服务、以及其实例信息和状态。
运行 Eureka Server:
- 依赖:org.springframework.cloud:spring-cloud-starter-eureka-server
- 激活: @EnableEurekaServer
默认情况下 Eureka 即是服务端,也是作为其它 Eureka Server 的客户端,需要配置 Eureka 的地址,单机版配置如下:
# 因为当前的 Eureka 是单机的,需要关闭集群的配置
eureka:
client:
register-with-eureka: false # 取消向注册中心注册
fetch-registry: false # 取消向注册中心获取注册信息(服务、实例信息)
service-url:
defaultZone: http://localhost:10001/eureka
2.1.1 Eureka Server HA
集群情况下 Eureka 也是作为其它 Eureka Server 的客户端,配置 Eureka 的地址即可:
eureka:
instance:
hostname: peer1
client:
service-url:
defaultZone: http://peer2:10012/eureka,http://peer3:10013/eureka
2.1.2 OPEN API
表1:Eureka OPEN API
| 操作 | OPEN API |
|---|---|
| 获取所有服务 | http://${host}:${port}/euraka/apps |
| 获取指定应用服务 | http://${host}:${port}/euraka/apps/{appName} |
| 获取指定应用的指定实例服务 | http://${host}:${port}/euraka/apps/{appName}/{id} |
| 注册实例服务 | http://${host}:${port}/euraka/apps/{appName} |
2.2 客户端: Eureka Client
Eureka Client 为当前服务提供注册、同步、查找服务以及其实例信息或状态等能力。
运行 Eureka Client
依赖:org.springframework.cloud:spring-cloud-starter-eureka
激活: @EnableEurekaClient(只有 Eureka 才有效) 或者 @EnableDiscoveryClient
是不是没扫描包@ComponentScan
eureka.client.service-url.defaultZone=http://localhost:10001/eureka
(1) Euraka Client API
EurekaClientConfigBeanEureka 客户端配置 APIEurekaInstanceConfigBeanEureka 实例配置 API
每天用心记录一点点。内容也许不重要,但习惯很重要!
Eureka 系列(01)最简使用姿态的更多相关文章
- Feign 系列(01)最简使用姿态
目录 Feign 系列(01)最简使用姿态 1. 引入 maven 依赖 2. 基本用法 3. Feign 声明式注解 Feign 系列(01)最简使用姿态 Spring Cloud 系列目录(htt ...
- Eureka 系列(04)客户端源码分析
Eureka 系列(04)客户端源码分析 [TOC] 0. Spring Cloud 系列目录 - Eureka 篇 在上一篇 Eureka 系列(01)最简使用姿态 中对 Eureka 的简单用法做 ...
- java io系列01之 "目录"
java io 系列目录如下: 01. java io系列01之 "目录" 02. java io系列02之 ByteArrayInputStream的简介,源码分析和示例(包括 ...
- SAP接口编程 之 JCo3.0系列(01):JCoDestination
SAP接口编程 之 JCo3.0系列(01):JCoDestination 字数2101 阅读103 评论0 喜欢0 JCo3.0是Java语言与ABAP语言双向通讯的中间件.与之前1.0/2.0相比 ...
- Java 集合系列 01 总体框架
java 集合系列目录: Java 集合系列 01 总体框架 Java 集合系列 02 Collection架构 Java 集合系列 03 ArrayList详细介绍(源码解析)和使用示例 Java ...
- Java 之 I/O 系列 01 ——基础
Java 之 I/O 系列 目录 Java 之 I/O 系列 01 ——基础 Java 之 I/O 系列 02 ——序列化(一) Java 之 I/O 系列 02 ——序列化(二) 整理<疯狂j ...
- JavaScript进阶系列01,函数的声明,函数参数,函数闭包
本篇主要体验JavaScript函数的声明.函数参数以及函数闭包. □ 函数的声明 ※ 声明全局函数 通常这样声明函数: function doSth() { alert("可以在任何时候调 ...
- 委托、Lambda表达式、事件系列01,委托是什么,委托的基本用法,委托的Method和Target属性
委托是一个类. namespace ConsoleApplication1 { internal delegate void MyDelegate(int val); class Program { ...
- [.NET MVC4 入门系列01]Helloworld MVC 4 第一个MVC4程序
[.NET MVC4 入门系列01]Helloworld MVC 4 第一个MVC4程序 一.练习项目: http://www.asp.net/mvc/tutorials/mvc-4/gettin ...
随机推荐
- LInux终端中Ctrl+S卡死
因为初学Linux,在vim中写东西是总是喜欢按Ctrl+s来保存内容导致终端突然卡主,然后上网查资料发现了Ctrl+s 暂停屏幕输出[锁住终端]而对应的按键是Ctrl+q 恢复屏幕输出[解锁终端]
- browser-sync浏览器同步刷新工具
> https://browsersync.io1. 安装browser-sync2. 切换到相应的目录,要监视的文件目录3. 启动browser-sync监视css文件: `browser-s ...
- win10 打开 sql sever配置管理器
!找到解决办法啦!WIN10系统 此电脑->右击->管理弹出以上界面啊哈哈哈还有一些解决办法在这个贴吧里...http://tieba.baidu.com/p/3000709047
- upc组队赛14 Evolution Game【dp】
Evolution Game 题目描述 In the fantasy world of ICPC there are magical beasts. As they grow, these beast ...
- Cocos2d-x在Windows平台环境的搭建
| 版权声明:本文为博主原创文章,未经博主允许不得转载. windows平台下配置Cocos2d-X引擎所需的压缩文件和可执行文件,如下: 下载链接: adt: http://tools.a ...
- 几道JS代码手写面试题
几道JS代码手写面试题 (1) 高阶段函数实现AOP(面向切面编程) Function.prototype.before = function (beforefn) { let ...
- SqlServer 跨库访问
同实例跨库 只需要 库名.dbo.表 dbo可省略 如: use Test select * from rdrecords select * from oa.dbo.UserInfo 不同实例与不同i ...
- mySQL学习入门教程——2.创建表
二.创建表 一.创建数据表的SQL语句模型(弱类型)CREATE TABLE [IF NOT EXISTS] 表名称(字段名1 列的类型[属性][索引],字段名2 列的类型[属性][索引],-字段名n ...
- C语言指向指针的指针
#include <stdio.h> int main() { /********************************************* * 指向指针的指针:指针变量存 ...
- Python【外】第一节 map()和匿名函数的配合使用
Python[外]第一节 map()和匿名函数的配合使用 map()函数 map函数使用语法如下:map(fun, iterable, ...) 功能: map() 会根据提供的函数fun对指定序列i ...