本文详细介绍spring cloud微服务的默认注册中心--eureka注册与发现。开发环境需要Windows系统、jdk和intellij idea。与zookeeper注册中心相比,eureka不需要服务器中间件,而且有更高的可用性,但不保证强一致性。

  用idea生成spring boot项目,选中jar包Cloud Discovery--Eureka Server,在启动类添加注解@EnableEurekaServer表名该服务为注册中心。下面分单节点和多节点(高可用)分别介绍配置文件:

  单节点配置application.yml非常简单,但因为是单节点,必须配置禁止自己注册自己:

spring:
application:
name: register #微服务名称 eureka:
instance:
hostname: localhost #主机名
client:
service-url:
defaultZone: http://${eureka.instance.hostname}:${server.port}/eureka/ #默认到此路径发现服务
register-with-eureka: false
fetch-registry: false
server:
enable-self-preservation: false server:
port: 1111

  打包,再cmd启动注册中心--单节点:java -jar F:\jars\register-0.0.1-SNAPSHOT.jar即可,web监控访问地址:http://localhost:1111,监控内容这里省略不讲

 多个节点(3个节点为例)配置application.yml有一小点麻烦,这里需要配置三个文件application-peer1.yml,application-peer2.yml,application-peer3.yml,以application-peer1.yml为例,其他两个类似:
spring:
application:
name: eureka-server #服务名称 eureka:
instance:
hostname: peer1 #服务器上配置主机名叫peer1
client:
service-url:
defaultZone: http://peer2:1112/eureka/,http://peer3:1113/eureka/ #默认到这两个地址发现服务 server:
port: 1111

   cmd启动注册中心--高可用多节点(3个节点为例):
    先配置hosts文件--将hosts文件拖到桌面添加如下内容,再拖回原来的位置,替换使hosts生效:
    127.0.0.1 peer1
    127.0.0.1 peer2
    127.0.0.1 peer3
    java -jar F:\jars\register-0.0.1-SNAPSHOT.jar --spring.profiles.active=peer1
    java -jar F:\jars\register-0.0.1-SNAPSHOT.jar --spring.profiles.active=peer2
    java -jar F:\jars\register-0.0.1-SNAPSHOT.jar --spring.profiles.active=peer3
    web监控访问地址:http://localhost:1111,监控内容这里省略不讲

  源码下载地址:https://github.com/zhzhair/spring-cloud-examples.git

spring cloud 注册中心--eureka注册与发现的更多相关文章

  1. Spring Cloud(Dalston.SR5)--Eureka 注册中心搭建

    基于 Netflix Eureka 做了二次封装,主要负责完成微服务架构中的服务治理功能,服务治理可以说是微服务架构中最为核心和基础的模块,他主要用来实现各个微服务实例的自动化注册与发现 服务注册:在 ...

  2. Spring Cloud(Dalston.SR5)--Eureka 注册中心高可用-服务提供和消费

    由于 Eureka 注册中心只是在内存中保存服务注册实例,并且没有将服务注册实例进行同步,因此我们需要对服务提供和消费进行调整,需要指定服务提供和消费的注册.服务发现的具体Eureka 注册中心配置, ...

  3. Spring Cloud(Dalston.SR5)--Eureka 注册中心高可用搭建

    高可用集群 在微服务架构这样的分布式环境中,我们需要充分考虑发生故障的情况,所以在生产环境中必须对各个组件进行高可用部署,对与微服务和服务注册中心都需要高可用部署,Eureka 高可用实际上就是将自己 ...

  4. Spring Cloud 如何使用Eureka注册服务 4.2.2

    要使用Eureka实现服务发现,需要项目中包含Eureka的服务端发现组件以及客户端发现组件. 搭建Maven父工程 创建一个Maven父工程xcservice-springcloud,并在工程的po ...

  5. 【Spring Cloud笔记】Eureka注册中心增加权限认证

    在Spring Cloud通过Eureka实现服务注册与发现时,默认提供web管理界面,但是如果在生产环境暴露出来,会存在安全问题.为了解决这个问题,我们可以通过添加权限认证进行控制,具体步骤如下: ...

  6. Spring Cloud 注册中心Eureka

    一.简介 最近在看Spring Cloud微服务,接下来的时间和大家一起分享我所看到的,公司现在用的是dubbo ,之后有时间也去了解了解dubbo的源码.与dubbo相比较,Spring Cloud ...

  7. Spring Cloud 系列之 Eureka 实现服务注册与发现

    如果你对 Spring Cloud 体系还不是很了解,可以先读一下 Spring Cloud 都有哪些模块 Eureka 是 Netflix 开源的服务注册发现组件,服务发现可以说是微服务架构的核心功 ...

  8. spring cloud 服务注册中心eureka高可用集群搭建

    spring cloud 服务注册中心eureka高可用集群搭建 一,准备工作 eureka可以类比zookeeper,本文用三台机器搭建集群,也就是说要启动三个eureka注册中心 1 本文三台eu ...

  9. 孰能巧用 Spring Cloud 服务注册中心Eureka

    Eureka介绍 在Spring Cloud Netflix 整合技术栈中,Eureka既可以作为服务注册中心也可以用于服务发现对整个微服务架构起着最核心的整合作用. Eureka是基于REST(Re ...

随机推荐

  1. Fabric动态增加组织【资料】

    Fabric在启动之前需要生成Orderer的创世区块和channel的配置区块.也就是说在Fabric网络启动之前我们就必须定好了有哪些Org,而当Fabric已经跑起来之后,想要增加Org却是很麻 ...

  2. 3.HttpSession

    1 HttpSession概述 1.1 什么是HttpSesssion javax.servlet.http.HttpSession接口表示一个会话,我们可以把一个会话内需要共享的数据保存到HttSe ...

  3. 这段代码,c 1秒,java 9秒,c# 14秒,而python。。。

    哎,不得不说最近见得键盘侠客太多了,做程序员没两天总是喜欢上嘴唇触天,下嘴唇碰地的吹. 自己分明都没用过几门语言,就对各门语言评头论足说三道四,这么语言多好那门语言有多烂. 可能是随着时间也变得没那么 ...

  4. 关于表单元素的name及HTML中的id

    这种在上高级WEB课时,老师为表单元素赋了name值,之后直接在JS中使用该值而不需要使用document.get...来获取了,例: <!DOCTYPE html> <html&g ...

  5. REST命令控制Player

    本文用Postman工具演示通过REST控制Cnario Playr 注意:Player的REST通信默认关闭,使用前需要从Setting>>Remote devices打开Use RES ...

  6. Python——Django-manage.py的内容

    在项目的根目录下(也就是有manage.py的那个目录),运行: python3 manage.py runserver IP:端口--> 在指定的IP和端口启动 python3 manage. ...

  7. git 的简单实用

    一. 安装 Git(git_for_windows.xp510.com.rar) 二. 使用 a) 进入到 git bash(命令行工具) b) 初始化user.name,user.email $ g ...

  8. property与x.setter与x.deleter

    #测试property,x.setter,x.deleter class Test1: def __init__(self): self.__private = "alex" @p ...

  9. 2.1 re 模块

    正则表达式 简单的范围的字符组 字符 量词 字符集 分组 转义字符 flags 方法  .findall() .finditer() .search() .match()  .sub() .subn( ...

  10. ajax 跨域 springboot

    CORS 定义 Cross-Origin Resource Sharing(CORS)跨来源资源共享是一份浏览器技术的规范,提供了 Web 服务从不同域传来沙盒脚本的方法,以避开浏览器的同源策略,是 ...