SpringCloud-Nexfilx
1、概述
Spring Cloud Netflix provides Netflix OSS integrations for Spring Boot apps through autoconfiguration and binding to the Spring Environment and other Spring programming model idioms.
With a few simple annotations you can quickly enable and configure the common patterns inside your application and build large distributed systems with battle-tested Netflix components.
The patterns provided include Service Discovery (Eureka), Circuit Breaker (Hystrix), Intelligent Routing (Zuul) and Client Side Load Balancing (Ribbon).
2、Service Discovery---Eureka
Service Discovery is one of the key tenets of a microservice-based architecture.
Eureka is the Netflix Service Discovery Server and Client.
2.1、Eureka server
How to Include Eureka Server?
To include Eureka Server in your project, use the starter with a group ID of org.springframework.cloud
and an artifact ID of spring-cloud-starter-netflix-eureka-server
.
How to Run a Eureka Server?
EurekaServer 如何实现?: 注册中心程序嵌入@EnableEurekaServer;
@SpringBootApplication
@EnableEurekaServer
public class Application { public static void main(String[] args) {
new SpringApplicationBuilder(Application.class).web(true).run(args);
} }
配置文件:
eureka.client.register-with-eureka=false 由于本服务为注册中心,不向注册中心注册自己;
eureka.client.fetch-registry=false 由于注册中心 仅维护实例,不需要检索服务;
2.2、Eureka client
How to Include Eureka Client?
To include the Eureka Client in your project, use the starter with a group ID of org.springframework.cloud
and an artifact ID of spring-cloud-starter-netflix-eureka-client
.
EurekaClient 功能?: 处理 服务注册、服务发现;
EurekaClient 如何实现?: 注解、参数配置的方式,嵌入 在客户端应用程序中;
EurekaClient 如何注册、发现?:客户端程序运行时,EurekaClient 向 EurekaServer 注册自身提供的服务 并 周期性 向EurekaServer 发送 心跳 更新 它的服务租约;
配置文件:
eureka.client.serviceUrl.defaultZone= 注册中心地址
3、Router and Filter---Zuul
Routing is an integral part of a microservice architecture.
Zuul is a JVM-based router and server-side load balancer from Netflix.
Zuul provides :Authentication、Insights、Stress Testing、Canary Testing、Dynamic Routing、Service Migration、Load Shedding、Security、Static Response handling、Active/Active traffic management.
How to Include Zuul?
To include Zuul in your project, use the starter with a group ID of org.springframework.cloud
and a artifact ID of spring-cloud-starter-netflix-zuul
.
@EnableZuulProxy
vs. @EnableZuulServer?
@EnableZuulProxy
contains all the filters installed by @EnableZuulServer
.
If you want a “blank” Zuul, you should use @EnableZuulServer
.
4、Client Side Load Balance---Ribbon
Ribbon is a client-side load balancer that gives you a lot of control over the behavior of HTTP and TCP clients.
Feign already uses Ribbon, so, if you use @FeignClient
, this section also applies.
How to Include Ribbon?
To include Ribbon in your project, use the starter with a group ID of org.springframework.cloud
and an artifact ID of spring-cloud-starter-netflix-ribbon
.
SpringCloud-Nexfilx的更多相关文章
- 【微框架】之一:从零开始,轻松搞定SpringCloud微框架系列--开山篇(spring boot 小demo)
Spring顶级框架有众多,那么接下的篇幅,我将重点讲解SpringCloud微框架的实现 Spring 顶级项目,包含众多,我们重点学习一下,SpringCloud项目以及SpringBoot项目 ...
- springcloud(第三篇)springcloud eureka 服务注册与发现 *****
http://blog.csdn.net/liaokailin/article/details/51314001 ******************************************* ...
- SpringCloud Sleuth 使用
1. 介绍 Spring-Cloud-Sleuth是Spring Cloud的组成部分之一,为SpringCloud应用实现了一种分布式追踪解决方案,其兼容了Zipkin, HTrace和log- ...
- SpringCloud+Consul 服务注册与服务发现
SpringCloud+Consul 服务注册与服务发现 1. 服务注册: 在Spring.factories有一段: # Discovery Client Configuration org.spr ...
- SpringCloud学习后获取的地址
关于SpringCloud + Docker 学习地址: (1) https://yq.aliyun.com/articles/57265 (2) https://yq.aliyun.com/team ...
- SpringCloud网关ZUUL集成consul
最近一直在搞基于springcloud的微服务开发,为了不限定微服务开发语言,服务发现决定采用consul不多说上代码 pom文件 <project xmlns="http://mav ...
- springcloud(一):大话Spring Cloud
研究了一段时间spring boot了准备向spirng cloud进发,公司架构和项目也全面拥抱了Spring Cloud.在使用了一段时间后发现Spring Cloud从技术架构上降低了对大型系统 ...
- springcloud(二):注册中心Eureka
Eureka是Netflix开源的一款提供服务注册和发现的产品,它提供了完整的Service Registry和Service Discovery实现.也是springcloud体系中最重要最核心的组 ...
- springcloud(四):熔断器Hystrix
说起springcloud熔断让我想起了去年股市中的熔断,多次痛的领悟,随意实施的熔断对整个系统的影响是灾难性的,好了接下来我们还是说正事. 熔断器 雪崩效应 在微服务架构中通常会有多个服务层调用,基 ...
- springcloud(六):配置中心(一)
随着线上项目变的日益庞大,每个项目都散落着各种配置文件,如果采用分布式的开发模式,需要的配置文件随着服务增加而不断增多.某一个基础服务信息变更,都会引起一系列的更新和重启,运维苦不堪言也容易出错.配置 ...
随机推荐
- brew安装指定版本的软件
原文:https://www.jianshu.com/p/aadb54eac0a8 在mac中使用 brew install 安装的软件默认都是最新版本的.有时候我们需要旧版本(指定版本)的时候,应该 ...
- Delphi保存网页中的图片
WEBBrowser已经打开了URL V = WEBBrowser.Document.body.createControlRange(); V1 = WEBBrow ...
- Jmeter接口测试报告模板优化
优化后在接口报告的接口信息中,直接展示url,method,结果和响应时间,详情中展示请求和响应数据.具体如下: 模板文件 jmeter-results-detail-report_21.xsl: & ...
- Nginx 模块 - ngx_core_module
原文地址 示例配置 指令 accept_mutex accept_mutex_delay daemon debug_connection debug_points env error_log even ...
- bash 特殊符号的含义
bash常见特殊符号及含义 linux中shell变量的含义解释
- Java NIO 缓冲区
Java NIO 在JDK1.4的时候引入,主要解决传统IO的一些性能问题.NIO 主要内容包含 Buffer .Channel.Selector等内容,本文主要讲解Buffer相关的内容. Buff ...
- Asp.Net Core 发布和部署 Linux + Nginx
安装.NET Core SDK 官方介绍:https://dotnet.microsoft.com/download/linux-package-manager/centos/sdk-current ...
- 【五一qbxt】day7-1 引水入城
[noip2010 洛谷p1514]引水入城 Before: 线段覆盖问题#1:(我们所需要的) 一个区间,若干条线段,现在求最少多少条线段覆盖满整个区间 区间长度8,可选的覆盖线段[2,6],[1, ...
- 远程连接不上centos的mysql的解决方法
1.防火墙没有开放3306端口 centos 有两种防火墙 FirewallD和iptables防火墙 centos7 使用的是FirewallD防火墙. 1.FirewallD防火墙开放3306端口 ...
- jQuery easyUI 使用 datagrid 表格
获取后台数据依旧是使用一般处理程序(ashx) ,分页上添加一个函数(pagerFilter(data)) 前端代码: <%@ Page Language="C#" Auto ...