zoukankan      html  css  js  c++  java
  • 微服务实战——微服务架构选型SpringCloud / Dubbo / K8S比较(一)

    说在前面

    大概是三年前,因一些原因公司原项目最初为单体结构部署,所有业务模块都在一个项目里面,而后随着业务的不断膨胀以及模块之间的耦合,导致后面增加或修改一些简单业务时的成本都会变的极大。新入职的同事更是苦不堪言,学习代码的成本极高。基于这些原因,就开始了后面漫长的架构改造旅途。

    这么多微服解决方案,到底选哪个?

    1.介绍

    file

    • Motan 微博内部使用的 RPC 框架,于 2016 年对外开源。后来在 Motan Agent 的基础上演化出了 WeiboMesh,这里暂时不展开说Motan GitHub

    • Dubbo 阿里巴巴开源,一款高性能、轻量级的开源Java RPC框架,它提供了三大核心能力:面向接口的远程方法调用,智能容错和负载均衡,以及服务自动注册和发现。曾经有很长一段时间未维护,现已贡献至Apache基金会孵化。附上链接Dubbo官网

    • SpringCloud 由Pivotal 公司 2014 年开源,利用 Spring Boot 特性整合了开源行业中优秀的组件(如Netflix相关组件),整体对外提供了一套在微服务架构中服务治理的解决方案。与Dubbo都经常被使用且比较,这次主要是基于SpringCloud基础组件集成

    • Kubernetes 全新的基于容器技术的分布式架构方案。用于管理云平台中多个主机上的容器化的应用,Kubernetes的目标是让部署容器化的应用简单并且高效(powerful),Kubernetes提供了应用部署,规划,更新,维护的一种机制

    2.对比(话不多说,直接上图)

    file

    3.选择

    很幸运的是,上图三种技术栈都有用过。算是各有优劣吧,具体还是要结合实际情况去选择,不过千万注意的是尽量别混搭(如SpringCloud+K8S或SpringCloud+Dubbo这样)

    后面具体会先围绕SpringCloud技术栈展开,而后也会记录下k8s和Dubbo相关的一些东西。这是第一篇,后面开始实战,以上!

    结束

    • 关于环境
      file)
    • 架构图
      file

    持续学习,记录点滴。更多文章请访问 文章首发

  • 相关阅读:
    MyBatis(十):MyBatis懒加载 延迟加载详解
    MyBatis(九):MyBatis类型处理器(TypeHandler)详解
    MyBatis(八):MyBatis插件机制详解
    MyBatis(七):MyBatis缓存详解(一级缓存/二级缓存)
    MyBatis(六):MyBatis复杂映射
    内省概念及详解(MethodDescriptor、PropertyDescriptor)
    反射概念及详解
    sublime3 + chrome + xdebug调试php代码
    php的文件系统和程序执行函数整理
    php编程趣事:乘法口诀、百钱买百鸡、过桥等问题
  • 原文地址:https://www.cnblogs.com/qupengkun/p/12607562.html
Copyright © 2011-2022 走看看