SpringCloud学习(1)——SpringCloud概述
微服务架构:
微服务架构是一种架构模式或者说是一种架构风格, 他提倡将单一应用程序划分成一组小的服务, 每个服务运行在其独立的进程中, 服务之间互相协调,互相配合, 为用户提供最终价值。服务之间采用轻量级的通信机制互相沟通(通常是基于HTTP的RESTful API)。
微服务优点:
- 微服务只是业务逻辑的代码, 不会和HTML,CSS或其他页面组件混合
- 每个微服务都有自己的存储能力, 可以有自己的数据库, 也可以有统一数据库
微服务缺点:
- 开发人员要处理分布式系统的复杂性
- 多服务之间的通信成本
微服务的技术栈:
- 服务开发 Springboot、Spring、SpringMVC等
- 服务配置与管理 Netflix公司的Archaius、阿里的Diamond等
- 服务注册与发现 Eureka、Consul、Zookeeper等
- 服务调用 Rest、RPC、gPRC
- 服务熔断器 Hystrix、Envoy等
- 服务负载均衡 Ribbon、Nginx等
- 服务接口调用 Feign等
- 消息队列 Kafka、RabbitMQ、ActiveMQ等
- 服务配置中心管理 SpringCloudConfig、Chef等
- 服务路由 Zuul等
- 服务监控 Zabbix、Nagios、Metrics、Spectator等
- 全链路跟踪 Zipkin, Brave, Dapper等
- 服务部署 Docker、OpenStack、Kubernetes等
- 数据流操作开发包 SpringCloud Stream(封装与Redis, Rabbit, Kafka等发送接收消息)
- 事件消息总线 SpringCloud Bus
- ......
SpringCloud概述:
SpringCloud是基于SpringBoot提供了一套微服务一站式解决方案, 包括服务注册与发现, 配置中心, 全链路监控, 服务网管, 负载均衡, 熔断器等组件, 除了基于NetFlix的开源组件做高度抽象封装之外, 还有一些选型中立的开源组件。
SpringCloud和SpringBoot区别:
Springboot专注于开苏方便的开发单个微服务个体, SpringCloud是关注全局的服务治理框架。SpringCloud依赖于Springboot。
SpringCloud与Dubbo对比:
| Dubbo | SpringCloud | |
| 服务注册中心 | Zookeeper | SpringCloud NetFlix Eureka |
| 服务调用方式 | RPC | REST API |
| 服务监控 | Dubbo-monitor | SpringBoot Admin |
| 断路器 | 不完善 | SpringCloud NetFlix Hystrix |
| 服务网关 | 无 | SpringCloud NetFlix Zuul |
| 分布式配置 | 无 | SpringCloud config |
| 服务跟踪 | 无 | SpringCloud Sleuth |
| 消息总线 | 无 | SpringCloud Bus |
| 数据流 | 无 | SpringCloud Stream |
| 批量任务 | 无 | SpringCloud Task |
最大的区别: SpringCloud抛弃了Dubbo的RPC通信, 采用的是基于HTTP的REST方式。
SpringCloud学习(1)——SpringCloud概述的更多相关文章
- SpringCloud学习(SPRINGCLOUD微服务实战)一
SpringCloud学习(SPRINGCLOUD微服务实战) springboot入门 1.配置文件 1.1可以自定义参数并在程序中使用 注解@component @value 例如 若配置文件为a ...
- SpringCloud学习系列-SpringCloud
SpringCloud是什么? SpringCloud=分布式微服务架构下的一站式解决方案,是各个微服务架构落地技术的集合体,俗称微服务全家桶 SpringCloud,基于SpringBoot提供了一 ...
- SpringCloud学习第二章-SpringBoot
SpringCloud 学习前提 SpringCloud是基于SpringBoot构建的,因此他延续了SpringBoot的契约模式以及开发方式.下面将讲到SpringBoot的构建方式. S ...
- SpringCloud学习系列之七 ----- Zuul路由网关的过滤器和异常处理
前言 在上篇中介绍了SpringCloud Zuul路由网关的基本使用版本,本篇则介绍基于SpringCloud(基于SpringBoot2.x,.SpringCloud Finchley版)中的路由 ...
- SpringCloud学习之Ribbon
一.负载均衡与Ribbon 负载均衡,在集群中是很常见的一个“名词”,顾名思义是根据一定的算法将请求分摊至对应的服务节点上,常见的算法有如下几种: 轮询法:所有请求被依次分发到每台应用服务器上,每台服 ...
- SpringCloud学习之feign
一.关于feigin feigin是一种模板化,声明式的http客户端,feign可以通过注解绑定到接口上来简化Http请求访问.当然我们也可以在创建Feign对象时定制自定义解码器(xml或者jso ...
- SpringCloud学习系列之三----- 断路器(Hystrix)和断路器监控(Dashboard)
前言 本篇主要介绍的是SpringCloud中的断路器(Hystrix)和断路器指标看板(Dashboard)的相关使用知识. SpringCloud Hystrix Hystrix 介绍 Netfl ...
- SpringCloud学习(二):微服务入门实战项目搭建
一.开始使用Spring Cloud实战微服务 1.SpringCloud是什么? 云计算的解决方案?不是 SpringCloud是一个在SpringBoot的基础上构建的一个快速构建分布式系统的工具 ...
- SpringCloud 学习(一) :Features
话不多说,现在在开发微服务项目,也想系统的学习一下SpringCloud,顾选择硬着头皮跟着英文官方文档学习一遍SpringCloud. 现在公司在用SpringCloud,也有很好的实践应用,加上更 ...
随机推荐
- loadrunner处理https请求
录制到的脚本如下: login() { lr_think_time(10); web_url("verifycode.jsp", "URL=https://192.168 ...
- js操作对象属性值为字符串
今天在项目开发中遇到一个没遇到过的问题,这个问题是需要对比两个对象a和b,a是一个只有一个属性的对象,b是一个含有多个属性对象,如果b中包含和a一模一样的属性名和值,则把这个一样的属性和值从b中删除了 ...
- CSS中水平居中设置的几种方式
1.行内元素: 如果被设置元素为文本.图片等行内元素时,水平居中是通过给父元素设置 text-align:center 来实现的. <body> <div class="t ...
- PSP DAILY软件功能说明书
PSP DAILY软件功能说明书 一.开发背景 你在完成了一周的软件工程作业后,需要提交一个PSP图表,里面有4项,如下所示: 1.本周PSP表格,包含每项任务的开始.中断.结束.最终时间,格式如下: ...
- HDU 5229 ZCC loves strings 博弈
题目链接: hdu:http://acm.hdu.edu.cn/showproblem.php?pid=5229 bc:http://bestcoder.hdu.edu.cn/contests/con ...
- Spring管理过滤器:org.springframework.web.filter.DelegatingFilterProxy
配置web.xml <filter> <filter-name>springSecurityFilterChain</filter-name> ...
- VC++调试基础
一.调试基础 调试快捷键 F5: 开始调试 Shift+F5: 停止调试 F10: 调试到下一句,这里是单步跟踪 F11: 调试到下一句,跟进函数内部 Shift+F11: 从当前函数中跳 ...
- Spring boot整合shiro框架
ShiroConfiguration package com.energy.common.config; import java.util.LinkedHashMap; import java.uti ...
- php 随机密码和盐 来自wordpress
生成随机密码或盐. Generate keys and salts using secure CSPRNG $chars = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJ ...
- HDU4747——2013 ACM/ICPC Asia Regional Hangzhou Online
啦啦啦. 这是杭州网赛的一个题目,当时没做出来,当然这个想法确实比较难想到. 题目质量很高,这个题目也很特别,以前都没做过类似的题目.让我又一次体验了线段树的强大力量. 题目的意思是给你n个数a1-a ...