SpringCloud 入门理论知识

Posted wu-zang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SpringCloud 入门理论知识相关的知识,希望对你有一定的参考价值。

SpringCloud

入门问题

  1. 微服务概念
  2. 微服务之间如何通信
  3. SpringCloud与Dubbo的区别
  4. SpringBoot与SpringCloud的关系
  5. 服务熔断和服务降级概念
  6. 微服务的优缺点
  7. 微服务技术栈
  8. eureka和zookeeper的区别

微服务概述

微服务起源:微服务

微服务将单一应用程序划分为一组小服务,每个服务独立在及自己的进程中,通过Restful方式互相沟通、调用。每个服务提供单个业务功能,去耦合。


微服务与微服务架构

微服务:指系统中的一个服务应用。

微服务架构:架构风格,即包括微服务及微服务之间的通信。


微服务的优缺点

优点

  1. 服务高内聚,完成一个细微化的业务或功能
  2. 单个服务的开发更便捷,开发简单、开发效率高
  3. 微服务可由独立团队开发
  4. 松耦合,开发及部署都独立
  5. 可以由不同语言开发,易于集成
  6. 前后端分离、灵活分配数据库

缺点

  1. 分布式系统的复杂性
  2. 运维难度增加,系统部署依赖问题
  3. 服务间通信额外花费
  4. 数据一致性、系统集成测试难度
  5. 性能监控难

微服务技术栈

微服务 技术
开发 Spring、SpringBoot、SpringMVC
配置管理 Archaius(Netflix)、Diamond(Ali)
注册与实现 Eureka、Consul、Zookeeper
调用 Rest、RPC、gRPC
熔断器 Hystrix、Envoy
负载均衡 Ribbon、nginx
接口调用工具 Feign
消息队列 Kaflka、RabbitMQ、ActiveMQ
配置中心管理 SpringCloudConfig、Chef
路由(API网关) Zuul
监控 Zabbix、Nagios、Metrics、Spectator
全链路追踪 ZipKin、Brave、Dapper
部署 Docker、OpenStack、Kubernates
数据流操作 SpringCloud Steam(Redis、Rabbit...)
事件消息总线 Spring Cloud Bus

SpringCloud 架构

主流选用

厂商 技术选用
阿里 Dubbo/HSF
京东 JSF
新浪微博 Motan
当当 Dubbo

框架对比

功能 Spring Cloud Motan gRPC Thrift Dubbo/DubboX
定位 完整微服务 RPC+ZK/Consul RPC RPC RPC
Rest 支持
RPC
多语言
注册/发现 (Eurka) Zookeeper/Consul
负载均衡 Zuul+Ribbon
配置服务 Archaius/sp config servier
调用链监控 Zuul API
高可用/容错 Hystrix Ribbon
其他

SpringCloud简介

技术分享图片

SpringCloud微服务架构,涵盖了服务注册/发现、配置中心、全链路监控、服务网管、负载均衡、熔断器等,使用SpringBooot简化开发,提供快速构建分布式系统的工具,包括配置管理、服务发现、断路器、路由、微代理、事件总线、全局锁、决策精选、分布式会话等,都可以使用SpringBoot开发进行快速启动和部署。

SpringCloud:一站式分布式微服务解决方案


Dubbo 对比 SpringCloud

对比 Dubbo SpringCloud
注册中心 Zookeeper Eureka
调用方式 RPC REST API
监控 Dubbo-minitor spring boot admin
断路器 不完善 SC Netfilx Hystrix
网管 SC Netfilx Zull
分布式配置 SC config
跟踪 SC Sleuth
消息总线 SC Bus
数据流 SC Stream
批量任务 SC Task
...

文档

官方文档 API 文档 中国社区 Spring中文网


以上是关于SpringCloud 入门理论知识的主要内容,如果未能解决你的问题,请参考以下文章

无人机开发之三:飞行器入门理论知识

L061-老男孩实效教育-数据库入门知识理论讲解-第一部-12节

精通并发与Netty入门一:Netty理论知识介绍

机器学习从入门到精通系列之BP神经网络理论知识详解

单片机基础理论知识学习

安装操作系统前须知的知识(理论)