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(六):配置中心(一)
随着线上项目变的日益庞大,每个项目都散落着各种配置文件,如果采用分布式的开发模式,需要的配置文件随着服务增加而不断增多.某一个基础服务信息变更,都会引起一系列的更新和重启,运维苦不堪言也容易出错.配置 ...
随机推荐
- edusoho迁移
1.目录指向web,index文件设为app.php <VirtualHost *:8000> ServerAdmin abcd@mail.com DocumentRoot "E ...
- mybatis批量插入、更新和删除
https://blog.csdn.net/m0_37981235/article/details/79131493 https://www.jb51.net/article/132823.htm
- 应用安全 - Web安全 - 文件包含攻防
LFI - 无限制本地文件包含 通过目录遍历漏洞可以获取到系统中其他文件的内容 常见的敏感信息路径 Windows系统 c:\boot.ini // 查看系统版本 c:\windows\system3 ...
- [Linux] 004 安装
1. 安装欢迎界面 Install or upgrade an existing system 安装或升级现有系统 Install system with basic video driver 安装过 ...
- Netty之Page级别的内存分配
Page 级别的内存分配: 之前我们介绍过, netty 内存分配的单位是chunk, 一个chunk 的大小是16MB, 实际上每个chunk, 都以双向链表的形式保存在一个chunkList 中, ...
- tmux多终端工具
在Linux服务器上没有办法像在桌面系统一样开多个终端,所以有时后进行一些操作不是太方便,所以可以使用tmux工具,创建多个终端. 这里仅仅是简单的介绍一下如何创建多个终端和进行多个终端之间切换,tm ...
- [未解决]报错: crawlab启动失败
拉取镜像 docker pull tikazyq/crawlab:latest 一键启动 docker-compose up 报错提示:
- Linux下查看日志文件
问题一:日志文件打开,卡死 在公司开发的时候,开发的程序在本地测试正常,但是在测试环境却有问题.这个时候第一反应就是查看日志文件,看看日志文件里面有什么错误信息.我潇洒的执行了一下 vim log.t ...
- SVN合并主干分支的方法
第一步 第二步 第三步 第四步
- 好用的for循环与range
for循环 # for 变量 in 可迭代对象: # pass s = "1234567890" for each in s: # 遍历字符串 print(each) # 1 2 ...