目录

  一:构建项目

  二:服务注册与发现

  为什么选择Eureka,请看上一篇博客 Eureka -- 浅谈Eureka

项目构建

    IDEA 选择 New Project 选择 Spring Initializr

    填入Group组、Artifice项目名,勾选Type为 Gradle Config(这里是基于gradle实现的)

    选择组件:根据自己需要进行选择,这里需要Eureka来做为注册中心,所以我先勾线了Eureka的两个服务依赖

    创建完成后 在 bulid.gradle中 使用subprojects统一所有子项目的配置

      subprojects{} 作用:使用多模块项目时,不同模块之间有相同的配置,导致重复配置,可以将相同的部分抽取出来,使用配置注入的技术完成子项目的配置。根项目就像一个容器, subprojects 方法遍历这个容器的所有元素并且注入指定的配置。

 服务注册与发现

  注册中心

    首先先创建一个Module模块,操作如下:右键项目 New Module

    选择gradle(如果用maven构建请选择maven)

    输入模块名称 register-center

    完成模块创建,在子模块的bulid.gradle中 添加 eureka 注册服务依赖

dependencies {
compile('org.springframework.cloud:spring-cloud-starter-netflix-eureka-server')
}

    在main里面创建启动类RegisterApplication(注意加入@EnableEurekaServer注解 来表明自己是一个注册中心)

@SpringBootApplication
@EnableEurekaServer//表明自己是注册中心
public class RegisterApplication {
public static void main(String[] args) {
SpringApplication.run(RegisterApplication.class, args);
}
}

    在resources中添加application.yml配置文件

spring:
application:
name: register-center
server:
port: 10000
eureka:
client:
service-url:
defaultZone: http://localhost:10000/eureka#默认地址
register-with-eureka: false#启动时不注册表明自己是一个注册中心
fetch-registry: false

    这里自定义了Eureka端口地址

    其Eureka默认端口地址为8761

    打开Eureka地址 发现 自己(register-center)已经被注册进了,和我们起初只是单让它作为一个注册中心是不匹配的

    可以发现现在是没有配置  register-with-eureka: false    fetch-registry: false 这两句代码的  Eureka也将自己注册进来,将这两句代码加入配置文件中 再次刷新Eureka发现自己已经不在注册中心了

   服务发现

    同上再次创建一个Module(order-client) 在其bulid.gradle中添加eureka客户端的依赖

dependencies {
compile('org.springframework.cloud:spring-cloud-starter-netflix-eureka-client')
}

    创建启动类OrderClientApplication(添加@EnableDiscoveryClient //表示自己是eureka客户端)

@SpringBootApplication
@EnableEurekaClient //表明自己是eureka客户端
public class OrderClientApplication {
public static void main(String[] args) {
SpringApplication.run(OrderClientApplication.class,args);
}
}

    添加application.yml配置 这里就不需要在写入 register-with-eureka: false    fetch-registry: false

    这里在启动时应该注意先将eureka服务端(register-center)启动,再启动客户端(order-client),如不先启动服务端(也可以添加 register-with-eureka: false fetch-registry: false 解决但是这就又成为服务端了,并不是我们想要的),客户端将报如下错误

    这里牵扯到Eureka的特点:即是服务端,又是客户端,后续会对Eureka注册过程进行一个分析想学习的,请关注博主o,这里先不做说明

    启动服务端再启动客户端,刷新注册中心,发现客户端已经注册进去了

    至此,Eureka的服务注册就已经实现了。

SpringCloud学习--Eureka 服务注册与发现的更多相关文章

  1. SpringCloud(3)---Eureka服务注册与发现

    Eureka服务注册与发现 一.Eureka概述 1.Eureka特点 (1) Eureka是一个基于REST的服务,用于定位服务,以实现云端中间层服务发现和故障转移. (2) Eureka 主管服务 ...

  2. java框架之SpringCloud(3)-Eureka服务注册与发现

    在上一章节完成了一个简单的微服务案例,下面就通过在这个案例的基础上集成 Eureka 来学习 Eureka. 介绍 概述 Eureka 是 Netflix 的一个子模块,也是核心模块之一.Eureka ...

  3. SpringCloud系列——Eureka 服务注册与发现

    前言 Eureka是一种基于REST(具像状态传输)的服务,主要用于AWS云中定位服务,以实现中间层服务器的负载平衡和故障转移.本文记录一个简单的服务注册与发现实例. GitHub地址:https:/ ...

  4. SpringCloud之Eureka服务注册与发现(一)

    一 Eureka的基本架构 Spring Cloud 封装了 Netflix 公司开发的 Eureka 模块来实现服务注册和发现(请对比Zookeeper). Eureka 采用了 C-S 的设计架构 ...

  5. SpringCloud:Eureka服务注册与发现

    1.Eureka简介 Spring Cloud 封装了 Netflix 公司开发的 Eureka 模块来实现服务注册和发现(请对比Zookeeper). Eureka 采用了 C-S 的设计架构.Eu ...

  6. 三(1)、springcloud之Eureka服务注册与发现

    1.认识Eureka ​ Eureka是Netflix的一个子模块,也是核心模块之一.Eureka是一个基于REST的服务,用于定位服务,以实现云端中间层服务发现和故障转移.服务注册与发现对于微服务架 ...

  7. 【分布式】SpringCloud(3)--Eureka服务注册与发现

    1.Eureka概述 1.1.什么是Eureka Eureka是Netflix的一个子模块.基于REST的服务,用于定位服务,以实现云端中间层服务发现和故障转移. 只需要使用服务的标识符,就可以访问到 ...

  8. springCloud学习之服务注册和发现

    leader让完一个简单的springcloud的demo,自己之前听说过springcloud微服务,但是没有重视.现在网上查各种资料,但是感觉不怎么样啊,还是不会,明天晚上把代码给他看,天啦,这个 ...

  9. SpringCloud全家桶学习之服务注册与发现及Eureka高可用集群搭建(二)

    一.Eureka服务注册与发现 (1)Eureka是什么? Eureka是NetFlix的一个子模块,也是核心模块之一.Eureka是一个基于REST的服务,用于定位服务,以实现云端中间层服务发现和故 ...

随机推荐

  1. Postman工具使用-接口测试(实战一)

    写在前面,本文首发[简书]https://www.jianshu.com/p/c188624c3580 作为一名测试人员,要去思考一下,如何能按需完成任务,又能轻松解决问题,这就很重要了!!! 凡事皆 ...

  2. mysql安装可能遇到的错误和安装过程

    http://jingyan.baidu.com/article/8ebacdf02e392a49f65cd52d.html

  3. Ubuntu server16.04安装配置驱动418.87、cuda10.1、cudnn7.6.4.38、anaconda、pytorch超详细解决

    目录 安装GCC 安装NVIDIA驱动 1. 卸载原有驱动(没装跳过) 2. 禁用nouveau 3. 安装NVIDIA显卡驱动 安装CUDA10.1 安装cudnn 安装anaconda 安装ten ...

  4. Kurskal算法

    Kruskal算法是以边为主要关注对象的最小生成树算法,是最小生成树最佳的算法实现. 其时间复杂度为O(ElogE)(E为边的数量),而Prime算法采用邻接矩阵的方法是O(V^2)(V为顶点数量). ...

  5. Axure实现banner功能

    1.添加一个动态面板,添加上一张.下一张及当前banner对应的序号圆圈,如图所示: 当添加好元素后,实现自动轮播:点击[轮播图面板]页面:选中动态面板:右边添加事件编辑栏——属性——载入时——添加动 ...

  6. office2019激活

    这个是在网上偶然看见的一个激活方式,分享一下. 复制如下代码保存后修改文件后缀名为".bat",请注意有一个点,然后保存以管理员身份运行即可: @echo off(cd /d &q ...

  7. Python基础(十八)

    今日主要内容 包 一.包 (一)什么是包 只要是含有__init__.py文件的文件夹就是一个包 包的本质其实就是一个文件夹,利用包将不同功能的模块组织起来,以此来提高程序的结构性和可维护性 包是用来 ...

  8. 使用 Jenkins 与 Sonar 集成对代码进行持续检测

    SonarQube 与 Jenkins 简介 SonarQube是 一个开源的代码质量分析平台,便于管理代码的质量,可检查出项目代码的漏洞和潜在的逻辑问题.同时,它提供了丰富的插件,支持多种语言的检测 ...

  9. MySQL基础(四)常用函数

    转载自 http://blog.csdn.net/evankaka MySQL数据库中提供了很丰富的函数.MySQL函数包括数学函数.字符串函数.日期和时间函数.条件判断函数.系统信息函数.加密函数. ...

  10. 《java编程思想》P140-P160(第七章复部+第八章部分)

    1.不用修饰符 修饰的方法或类,它们的修饰符是 默认修饰符,即 包访问权限(包内都可以用)(临时记的) 2. final数据: 对于基本类型,final使数值恒定不变,而对于对象引用,final使引用 ...