《Spring Cloud Netflix》-- 服务注册和服务发现-Eureka的服务认证和集群

一、 Eureka的服务认证

1、 服务端添加依赖

<dependency>
     <groupId>org.springframework.boot</groupId>
     <artifactId>spring-boot-starter-security</artifactId>
</dependency>

2、 服务端添加配置

# 服务认证

security.basic.enabled=true
security.user.name=roncoo
security.user.password=123456

3、 修改服务端和客户端的配置

eureka.client.serviceUrl.defaultZone=http://roncoo:[email protected]:8761/eureka/

建议:

能在内网的,尽量在内网,这样既可以保障安全,也能降低复杂度。

二、 Eureka的集群

说明:启动3个注册中心,我们将roncoo1、roncoo2、roncoo3各自都将serviceUrl指向另外两个节点,即是roncoo1、roncoo2、roncoo3是两两互相注册的。

步骤:

1、设置hosts:C:\Windows\System32\drivers\etc\hosts;

# Cluster hosts
127.0.0.1roncoo1
127.0.0.1roncoo2
127.0.0.1roncoo3

2、修改配置

每个服务都需要相应的修改,服务-01

spring.application.name=spring-cloud-server-01
eureka.instance.hostname=roncoo1
eureka.client.serviceUrl.defaultZone=http://roncoo:[email protected]:8762/eureka/,http://roncoo:[email protected]:8763/eureka/

同理:服务-02,服务-03都做相对应的修改

3、配置修改

#这里是为了测试,生产应该保持默认值:30s

eureka.instance.lease-renewal-interval-in-seconds=5

#剔除失效服务的检测时间,默认值:60000,即60s

eureka.server.eviction-interval-timer-in-ms=5000

另一种集群方式(不可用):

说明:注册中心1指向注册中心2, 注册中心2指向注册中心3,那么当服务向注册中心1注册时,注册中心2中会有该服务的注册信息,但是注册中心3中没有。

结论:服务注册信息不会被二次传播。

证实:PeerAwareInstanceRegistryImpl类

// If it is a replication already, do not replicate again as this will create a poison replication

如果该注册信息是其它Eureka同步过的则不会再继续传播给自己的peer节点

// If the url represents this host, do not replicate to yourself.

如果是本机的,不要向自己发同步请求

参考微服务视频内容:Spring Cloud 第一季

时间: 2024-08-04 11:42:48

《Spring Cloud Netflix》-- 服务注册和服务发现-Eureka的服务认证和集群的相关文章

Spring Cloud Hystrix理解与实践(一):搭建简单监控集群

前言 在分布式架构中,所谓的断路器模式是指当某个服务发生故障之后,通过断路器的故障监控,向调用方返回一个错误响应,这样就不会使得线程因调用故障服务被长时间占用不释放,避免故障的继续蔓延.Spring Cloud Hystrix实现了断路器,线程隔离等一系列服务保护功能,它是基于Netflix的开源框架Hystrix实现的. 目的不是介绍Hystrix的与原理.及其使用等(有时间也要记录啊),而是通过实战搭建一个简单的监控集群,使用Hystrix Dashboard仪表盘动态监控展示以此来加深对H

【微服务架构】SpringCloud之Eureka(服务注册和服务发现基础篇)(二)

上篇文章讲解了SpringCloud组件和概念介绍,接下来讲解一下SpringCloud组件相关组件使用.原理和每个组件的作用的,它主要提供的模块包括:服务发现(Eureka),断路器(Hystrix),智能路有(Zuul),客户端负载均衡(Ribbon),Archaius,Turbine等  今天学习的是Eureka即注册中心 一:Eureka简介 Eureka是Spring Cloud Netflix的一个子模块,也是核心模块之一.用于云端服务发现,一个基于REST的服务,用于定位服务,以实

Spring Cloud Netflix概览和架构设计

Spring Cloud简介 Spring Cloud是基于Spring Boot的一整套实现微服务的框架.他提供了微服务开发所需的配置管理.服务发现.断路器.智能路由.微代理.控制总线.全局锁.决策竞选.分布式会话和集群状态管理等组件.最重要的是,跟spring boot框架一起使用的话,会让你开发微服务架构的云服务非常好的方便. Spring Cloud包含了非常多的子框架,其中,Spring Cloud Netflix是其中一套框架,由Netflix开发后来又并入Spring Cloud大

Spring Cloud netflix 概览和架构设计

pring Cloud是基于Spring Boot的一整套实现微服务的框架.他提供了微服务开发所需的配置管理.服务发现.断路器.智能路由.微代理.控制总线.全局锁.决策竞选.分布式会话和集群状态管理等组件.最重要的是,跟spring boot框架一起使用的话,会让你开发微服务架构的云服务非常好的方便.Spring Cloud包含了非常多的子框架,其中,Spring Cloud netflix是其中一套框架,由Netflix开发后来又并入Spring Cloud大家庭,它主要提供的模块包括:服务发

Spring Cloud入门程序——注册服务提供者

1.创建Spring Starter project 2.引入依赖 点击finish 3.创建启动类 package com.hello; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.cloud.client.discovery.EnableDisc

Spring Cloud Netflix子模块综合整理-Zuul

路由器和过滤器:Zuul 路由是微服务架构的组成部分. 例如,/ 可以映射到您的Web应用程序,/api /users映射到用户服务,/api/ shop映射到购物服务. Zuul是Netflix基于JVM的路由器和服务器端负载均衡器. Netflix使用Zuul进行以下操作: ? 配置属性zuul.max.host.connections已被两个新属性替换,zuul.host.maxTotalConnections和zuul.host.maxPerRouteConnections,分别默认为2

Spring Cloud Netflix子模块综合整理-Ribbon

客户端负载均衡器:Rbbion Ribbon是一个客户端负载均衡器,可以让您对HTTP和TCP客户端的行为进行大量控制. Feign已使用Ribbon,因此如果您使用的是@FeignClient,则此部分也适用. Ribbon中的一个核心概念是指定客户端的概念.每个负载均衡器都是组件集成的一部分,这些组件协同工作以按需联系远程服务器,并且集成有共开发人员引用的名称(例如,使用@FeignClient注解).Spring Cloud使用RibbonClientConfiguration按需为每个命

Spring Cloud 入门教程(十):和RabbitMQ的整合 -- 消息总线Spring Cloud Netflix Bus

在本教程第三讲Spring Cloud 入门教程(三): 配置自动刷新中,通过POST方式向客户端发送/refresh请求, 可以让客户端获取到配置的最新变化.但试想一下, 在分布式系统中,如果存在很多个客户端都需要刷新改配置,通过这种方式去刷新也是一种非常痛苦的事情.那有没有什么办法让系统自动完成呢? 之前我们提到用githook或者jenkins等外部工具来触发.现在说另外一种思路, 如果refresh命令可以发送给config server,然后config server自动通知所有con

《Spring Cloud Netflix》 -- 服务注册和服务发现-Eureka的常用配置

一.版本的说明 Angel版本对应Spring Boot 1.2.x,可以使用Spring Boot 1.3.x: Brixton版本对应Spring Boot 1.3.x,可以使用Spring Boot 1.4.x: Camden版本对应Spring Boot 1.4.x,可以使用Spring Boot 1.5.x: Dalston版本对应Spring Boot 1.5.x 二.应用进行热部署 添加依赖: 重启即可! 注意:如果是增加了jar包,还是需要关闭重启. 三.Eureka常用配置 a