zoukankan      html  css  js  c++  java
  • linux运维、架构之路-微服务容器化迁移

    一、微服务特点

    1•服务组件化
       每个服务独立开发、部署,有效避免一个服务的修改引起整个系统重新部署。
    2•技术栈灵活
       约定通信方式,使得服务本身功能实现对技术要求不再那么敏感。
    3•独立部署
       每个微服务独立部署,加快部署速度,方便扩展。
    4•扩展性强
        每个微服务可以部署多个,并且有负载均衡能力。
    5•独立数据
        每个微服务有独立的基本组件,例如数据库、缓存等。

    微服务架构图:

    二、微服务的不足

    • 沟通成本:每个组件不同的人或者不同的团队开发,需要一定的沟通成本
    • 数据一致性:每个独立组件的数据,多个副本的数据一致性
    • 运维成本:相比传统的单体应用只部署一个,微服务得部署几十个,涉及大量的配置,监控等
    • 内部架构复杂性:分布式,每个组件间的通信问题,不同的数据库

     三、单体架构优势和不足

    1、优势

    • 易于部署:部署只需部署一个包即可
    • 易于测试:编写测试用例只需要一份即可

    2、不足

    • 代码膨胀,难以维护:随着业务的增长,代码量越来越多,可扩展、可维护性会很差
    • 构建、部署成本大:每次构建都是全量的包,部署多套也不会提高并发性
    • 新人上手难:业务越来越复杂,可读性、可维护性会大幅度下降,新手接手代码时间会很长

     

  • 相关阅读:
    微信开发-微信红包实例;
    微信支付-商户调用支付接口失败,已完成交易接口升级的用户应使用新接口进行交易;
    JS 获取当前时间
    微信支付-退款之CURL 52
    Binniabia is what?
    WIN7 自动同步服务器上备份文件
    WIN7 自动同步服务器上备份文件
    CSS之clearfix清除浮动
    解决IOS iframe不滚动问题
    CSS文字不换行,溢出省略
  • 原文地址:https://www.cnblogs.com/yanxinjiang/p/13149832.html
Copyright © 2011-2022 走看看