Spring Cloud微服务笔记(二)Spring Cloud 简介
Spring Cloud 简介
Spring Cloud的设计理念是Integrate Everything,即充分利用现有的开源组件,
在它们之上设计一套统一的规范/接口使它们能够接入Spring Cloud体系并且能够无缝切换底层实现。
一、Spring Cloud 与中间件
中间件向下屏蔽异构的硬件、软件、网络等计算机资源,向上提供应用开发、运行、维护等全生命周期的
统一环境与管理,属于承上启下的中间层。中间件本质上可以归属为技术构架,常见的中间件分别是服务
治理中间件(如,Dubbo)、配置中心、全链路监控、分布式事务、分布式定时任务、消息中间件、API网关、
分布式缓存、数据库中间件。
Spring Cloud 是一系列中间件合集,提供了一套完整的微服务解决方案。
1.Spring Cloud 与服务治理中间件
服务治理中间件包括服务注册与发现、服务路由、负载均衡、自我保护、丰富的治理管理机制等功能。
其中服务路由包括服务上下线、在线测试、机房就近选择、A/B测试、灰度发布等。负载均衡支持根据
目标状态和目标权重进行负载均衡。自我保护服务降级、流量监控。
Spring Cloud 目前支持:
1)Euraka、Zookeeper、Consul作为注册中心;
2)Hystrix进行熔断自我保护;
3)Ribbon进行负载均衡;
2.Spring Cloud 与配置中间件
在分布式系统中,由于存在多个实例,需要分别管理每个具体服务工程中的配置,
上线需要准备Check List并逐个检查每个上线服务是否正确。在系统上线后一旦
修改某个配置,就需要重启服务。这样开发管理相当麻烦。因此我们需要把分布式
系统中的配置信息抽取出来统一管理,这个管理的中间件称为配置中心。配置中心
应该具备的功能,分别是支持各种复杂的配置场景,与公司的运维体系和权限管理
体系集成,各种兼容支持。Spring Cloud Config 是Spring Cloud生态圈中的配置中心中间件。
3.Spring Cloud 与网关中间件
AIP Gateway,是出现在系统边界上一个面向API的、串行集中式的强管控服务,这里的边界是企业
IT系统的边界,可以理解为企业级防火强,主要起到隔离外部访问与内部系统的作用。网关在微服务架构中的位置:

作为一个网关中间件,至少应该具备如下四个功能:
1)统一接入功能:
2)协议适配功能:
3)流量管控功能:
4)安全防护;
Spring Cloud 第一代网关Zuul, 第二代网关Gateway。
4.Spring Cloud 与全链路监控中间件
在微服务架构中,分散在每个服务下的日志信息不利于问题的排查定位问题发生的根本原因。
此时,就可以了利用全链路监控中间件收集、汇总与分析日志信息,进行可视化展示和监控告警。
全链路监控中间件应具备如下功能:
1)定位慢调用:包括慢Web服务、慢REST或RPC服务、慢SQL;
2)定位各种错误:包括4XX、5XX、Service Error;
3)定位各种异常:
4)展现依赖和拓扑:
5)trace条用链:
6)应用警告:
Spring Cloud微服务笔记(二)Spring Cloud 简介的更多相关文章
- spring cloud微服务实践二
在上一篇,我们已经搭建了spring cloud微服务中的注册中心.但只有一个注册中心还远远不够. 接下来我们就来尝试提供服务. 注:这一个系列的开发环境版本为 java1.8, spring boo ...
- Spring Cloud 微服务五:Spring cloud gateway限流
前言:在互联网应用中,特别是电商,高并发的场景非常多,比如:秒杀.抢购.双11等,在开始时间点会使流量爆发式地涌入,如果对网络流量不加控制很有可能造成后台实例资源耗尽.限流是指通过指定的策略削减流量, ...
- Spring Cloud微服务笔记(三)服务治理:Spring Cloud Eureka快速入门
服务治理:Spring Cloud Eureka 一.服务治理 服务治理是微服务架构中最为核心和基础的模块,它主要用来实现各个微服务实例的自动化注册与发现. 1.服务注册: 在服务治理框架中,通常会构 ...
- Spring Cloud微服务笔记(一)微服务概念
微服务概念 一.什么是微服务架构 微服务,是一个小的.松耦合的分布式服务. 为什么需要微服务: 1)单体系统部署在一个进程中,修改了一个小功能,为了部署上线就会影响其他功能. 2)单体应用各个功能模块 ...
- Spring Cloud 微服务笔记(七) Zuul入门
Zuul入门 Zuul是从设备和网站到后端应用程序所有请求的前门,为内部服务提供可配置的对外URL到服务的 映射关系,基于JVM的后端路由器.其具备一下功能: 1)认证与授权 2)压力控制 3)金丝雀 ...
- Spring Cloud 微服务笔记(六)Spring Cloud Hystrix
Spring Cloud Hystrix Hystrix是一个延迟和容错库,旨在隔离远程系统.服务和第三方库,阻止链接故障,在复杂的分布式系统中实现恢复能力. 一.快速入门 1)依赖: <dep ...
- Spring Cloud微服务笔记(五)Feign
Feign 一.Feign概述 Feign是一个声明式的Web Service客户端.在Spring Cloud 中使用Feign,可以做到 使用HTTP请求访问远程服务,就像调用本地方法一样,同时它 ...
- Spring Cloud微服务笔记(四)客户端负载均衡:Spring Cloud Ribbon
客户端负载均衡:Spring Cloud Ribbon 一.负载均衡概念 负载均衡在系统架构中是一个非常重要,并且是不得不去实施的内容.因为负载均衡对系统的高可用性. 网络压力的缓解和处理能力的扩容的 ...
- Spring Cloud 微服务六:调用链跟踪Spring cloud sleuth +zipkin
前言:随着微服务系统的增加,服务之间的调用关系变得会非常复杂,这给运维以及排查问题带来了很大的麻烦,这时服务调用监控就显得非常重要了.spring cloud sleuth实现了对分布式服务的监控解决 ...
随机推荐
- Python——爬取人口迁徙数据(以腾讯迁徙为例)
说明: 1.迁徙量是腾讯修改后的数值,无法确认真实性. 2.代码运行期间,腾讯迁徙未设置IP屏蔽和浏览器检测,因此下段代码仅能保证发布近期有效. 3.代码功能:爬取指定一天的四十(此四十是根据自己的城 ...
- js手写'Promise'
/* * pending:初始化成功 * fulfilled:成功 * rejected:失败 * */ function Promise(executor) {// 执行器 this.status ...
- 将应用部署到Tomcat根目录的方法
将应用部署到Tomcat根目录的目的是可以通过“http://[ip]:[port]”直接访问应用,而不是使用“http://[ip]:[port]/[appName]”上下文路径进行访问. 方法 ...
- .Net Core的Excel导入
1.前台代码,layui模板 2.后台代码,后台实现 (1)导入 (2)数据验证 (3)将导入数据存储在数据库中 (4)定义保存导入数据接口 (5)接口的实现调用业务层 (6)业务层接口 (7)业务层 ...
- Theano.tensor.round函数学习,同时解决输出Elemwise{xxx,no_inplace}.0的问题
1. 出现Elemwise{xxx,no_inplace}.0 这是因为没有定义theano.function所致,参考下面错误示范: y = np.random.normal(size=(2,2 ...
- 关于Android8及以上版本自定义广播无法接收问题
高版本Android直接发送广播是无法接收的 e.g. sendBraodcast(intent); 需要在前面加上(前一个String为接收广播应用的项目地址,后一个为该广播类的地址) intent ...
- 【转】Setting up SDL 2 on Visual Studio 2010 Ultimate
from: Lazy Foo'Productions - Setting up SDL 2 on Visual Studio 2010 Ultimate 1)First thing you need ...
- Mongodb 安装错误汇总
Failed to restart mongod.service: Unit mongod.service not found. 解决方法: Most probably unit mongodb.se ...
- .net core WebAPI 初探及连接MySQL
1. 前言 笔者最近跟着微软官方文档学习.net core WebAPI,但发现其对 WebAPI 连接数据库.读取数据库方面讲得不够细致明了.写此文的目的,即实现 .net core WebAPI ...
- idea工具maven生命周期clean,compile,install,package区别
idea工具maven projects里面有9种生命周期,今天刚好遇到,顺便分享下自己的理解.生命周期是包含在一个项目构建中的一系列有序的阶段.最常用的两种打包方法:一:clean,package( ...