• SpringCloud:浅谈分布式系统微服务架构


    前言:

      srping‘Cloud无可置疑他是基于springboot的,通俗的说就是每个speingboot代表一个微服务,springCloud就是用来管理他们的,所以说学习spring cloud本质上学的是组件(中间件),目的是通过相关指定的中间件管理微服务,一般中间件所要解决的问题是,微服务之间的通信,服务的治理,客户端的访问,和开发人员的维护。

     参考网址:

      SpringCloud中文网:https://www.springcloud.cc

      SpringCloud中国社区:http://www.springcloud.cn

      

    1,我对微服务架构的理解

      微服务架构是一种思想,本质是将项目的各功能模块拆分成可以独立运行的小项目,各项目之间依然有联系(通过相关分布式组件),项目与项目之间通过联系又形成一个完整的项目,目的是充分利用和节省了计算机资源,让每个小项目(微服务)只干自己的事

    2.为什么选择SpringCloud作为微服务架构

      整体的解决方案齐全,成熟度高(稳定)

      生态好,社区热度高

      可维护性强

    3.当前各大IT公司用的微服务架构

      阿里:dubbo+HFS

      京东:JSF

      新浪:Motan

      当当:DubboX

    4.分布式架构/微服务架构会遇到的四个核心问题

      1.这么多服务,客户端如何去访问? 

      一般会一个代理或者叫API Gateway,他的作用包括

    • 提供统一服务入口,让微服务对前台透明
    • 聚合后台的服务,节省流量,提升性能
    • 提供安全,过滤,流控等API管理功能

      2.服务之间如何通信?

    • 同步调用
      • REST(JAX-RS)
      • RPC(Dubbo)
    • 异步消息调用(Kafka, Notify, MetaQ),所谓的消息队列mq

      3.微服务该如何治理?

      注册中心(zookeeper):注册与发现

      4,服务挂了怎么办?

      首先为了避免各服务分配的服务器资源不合理情况?负载均衡

      比如微服务a的使用率要远远小于微服务b,那么就应该自动的给a少分些服务器资源,给b多份一些,而这个过程就叫做负载均衡,其中使用比较广泛的就是dubbo框架

      熔断机制

      微服务有时会因为依赖关系复杂,或者服务拆分不够规范产生雪崩效应,而熔断机制就是其中的解决方案之一

      降级(本地缓存)

      限流

      

    5.微服务完整架构图

     

    6.微服务相关技术栈

      

    7.常见面试题:

     

  • 相关阅读:
    攻防世界Web Cat和ics-05
    攻防世界 WEB lottery 和 ics-06
    python3下robot framework ride 测试环境搭建
    python2下robot framework ride 测试环境搭建
    自动化测试的目的与本质
    自动化回归测试执行效率探讨
    selenium+python元素定位总计及实例说明
    Mac上安装Selenium+Python+PyCharm
    mac本安装fiddler抓包工具(普遍认为fiddler的mac版不好用)
    浅谈app运行日志
  • 原文地址:https://www.cnblogs.com/CL-King/p/14304782.html
Copyright © 2020-2023  润新知