zoukankan      html  css  js  c++  java
  • 微服务

    什么是微服务

    微服务是一种架构风格或者是架构模式。提倡将单一的应用程序划分成一组小的服务。(将一站式应用,拆分成一个一个服务,彻底的解耦)

    微服务的优点

    1、开发简单,开发效率高,一个服务可能只干一件事情。
    2、微服务能够被小团队单独开发。
    3、微服务能使用不同的语言开发
    4、服务间是松耦合的,在开发和部署阶段都是独立的。

    微服务的缺点

    1、开发人员要处理分布式系统的复杂性

    微服务架构的核心问题

    1、服务很多,客户端该怎么访问?
    2、多个服务间如何通信?
    3、这么多服务,如何治理?
    4、服务挂了怎么办?

    解决方案

    1、Spring Cloud NetFlix 一站式解决方案
    api 网关 (zuul组件)
    Feign ---HttpClient ---Http通信方式(特点:同步,阻塞)
    服务注册发现:Euraka
    熔断机制:Hystrix

    2、Apache Dubbo Zookeeper 半自动,需要整合第三方
    没有api网关,找第三方组件,或者自己实现。
    通过Dubbo通信 (Dubbo 基于java开源,高性能 RPC通信框架)
    Zookeeper
    没有熔断机制:借助 Hystrix

    PS:Dubbo方案并不完善

    3、Spring Cloud Alibaba 一站式解决方案,更简单

    总结-解决问题:
    1:API 网关(解决服务路由问题)
    2:通信问题(HTTP,RPC)
    3:注册发现(解决高可用)
    3:熔断机制(服务降级,雪崩问题)

    微服务的优点:
    1、职责单一
    2、是松耦合的,开发和部署阶段都是独立的
    3、可以使用不同语言来开发
    4、易于理解,修改和维护

    微服务的缺点:
    1、开发人员要处理分布式系统的复杂性
    2、增加服务间的通信成本
    3、系统部署依赖(部署顺序依赖等)
    4、数据一致性问题
    5、系统集成测试

  • 相关阅读:
    与你的领导意见不一致时你会怎么做?
    调用caffe脚本将图片转换为了lmdb格式
    第04组 Alpha冲刺(4/4)
    第04组 Alpha冲刺(3/4)
    第04组 Alpha冲刺(2/4)
    第04组 Alpha冲刺(1/4)
    2019 SDN上机第3次作业
    2019 SDN阅读作业
    2019 SDN上机第2次作业
    2019 SDN上机第1次作业
  • 原文地址:https://www.cnblogs.com/songl/p/14445980.html
Copyright © 2011-2022 走看看