zoukankan      html  css  js  c++  java
  • 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方式。

  • 相关阅读:
    MyBatis之三:多表联合查询
    MyBatis之二:简单增删改查
    MyBatis之一:入门
    如何用Maven创建web项目(具体步骤)
    Maven3.2创建webapp项目过程中问题以及解决方案
    纯前端下载数据Excel文档
    centos7 yum无法正常工作
    Element ui table selection 分页支持保存已经选中的数据,同时支持随时删除选中的数据,并设置默认选择
    删除排序数组中的重复选项
    列表数据(包含父节点关系)转化为树形结构
  • 原文地址:https://www.cnblogs.com/chinda/p/9165610.html
Copyright © 2011-2022 走看看