热门标签 | HotTags
当前位置:  开发笔记 > 后端 > 正文

微服务精华问答|微服务有什么优点和不足呢?

戳蓝字“CSDN云计算”关注我们哦!过去几年来,“微服务架构”这个术语出现了,它描述了一种将软件应用程序设计为可独立部署的服务套件的特定方

戳蓝字“CSDN云计算”关注我们哦!


640?wx_fmt=png

过去几年来,“微服务架构”这个术语出现了,它描述了一种将软件应用程序设计为可独立部署的服务套件的特定方式。尽管这种架构风格没有确切的定义,但围绕业务能力,自动化部署,端点智能以及语言和数据的分散控制等方面存在着某些共同特征。


640?wx_fmt=gif1


Q:微服务有什么优点?


A:微服务的优点

1、通过分解巨大单体式应用为多个服务方法解决了复杂性问题,每个微服务相对较小

2、每个单体应用不局限于固定的技术栈,开发者可以自由选择开发技术,提供API服务。

3、每个微服务独立的开发,部署

4、单一职责功能,每个服务都很简单,只关注于一个业务功能

5、易于规模化开发,多个开发团队可以并行开发,每个团队负责一项服务

6、改善故障隔离。一个服务宕机不会影响其他的服务


640?wx_fmt=gif2

Q:微服务又有什么缺点呢?


A:微服务缺点:

1.开发者需要应对创建分布式系统所产生的额外的复杂因素

l  目前的IDE主要面对的是单体工程程序,无法显示支持分布式应用的开发

l  测试工作更加困难

l  需要采用服务间的通讯机制

l  很难在不采用分布式事务的情况下跨服务实现功能

l  跨服务实现要求功能要求团队之间的紧密协作

2.部署复杂

3.内存占用量更高


640?wx_fmt=gif3

Q:微服务架构又有什么优点和不足呢?


A:微服务架构的好处

      1.单个服务很容易开发、理解和维护。

      2.这种架构使得每个服务都可以有专门开发团队来开发。

      3.微服务架构模式是每个微服务独立的部署。

      4.微服务架构模式使得每个服务独立扩展。

微服务架构的不足

      微服务应用是分布式系统,由此会带来固有的复杂性。

      服务地址目录,服务健康度,部署困难,服务依赖问题,数据库分区问题。


640?wx_fmt=gif4

Q:微服务内部通信的方式有哪些?


A:内部服务之间的通信方式有两种:

1、基于HTTP协议的同步机制(REST、RPC);

2、基于消息队列的异步消息处理机制(AMQP-based message broker)。


640?wx_fmt=gif5

Q:微服务中经常谈到耦合和解藕,那么,什么是耦合?


A:组件之间依赖关系强度的度量被认为是耦合。一个好的设计总是被认为具有高内聚力和低耦合性。


----------------    --------------

小伙伴们冲鸭,后台留言区等着你!

关于微服务,今天你学到了什么?还有哪些不懂的?除此还对哪些话题感兴趣?快来留言区打卡啦!留言方式:打开第XX天,答:……

同时欢迎大家搜集更多问题,投稿给我们!风里雨里留言区里等你~


----------------    --------------


1.微信群:

添加小编微信:color_ld,备注“进群+姓名+公司职位”即可,加入【云计算学习交流群】,和志同道合的朋友们共同打卡学习!


2.征稿:

投稿邮箱:liudan@csdn.net;微信号:color_ld。请备注投稿+姓名+公司职位。


推荐阅读

  • Gartner的预言:通向混合IT之旅

  • 崩溃!新浪程序员加班错失 77 万年会大奖

  • 刚刚!华为又被美国盯上了!

  • 阿里“菜鸟”AI?

  • 以太坊升级的拖油瓶,竟只是这几行代码

  • 程序员有话说 | 程序猿在乘地铁的时候都在想什么?

  • 清华北大“世界排名断崖式下跌”?


640?wx_fmt=gif点击“阅读原文”,打开 CSDN App 阅读更贴心!


640?wx_fmt=png喜欢就点击“好看”吧!

推荐阅读
  • Spring Cloud学习指南:深入理解微服务架构
    本文介绍了微服务架构的基本概念及其在Spring Cloud中的实现。讨论了微服务架构的主要优势,如简化开发和维护、快速启动、灵活的技术栈选择以及按需扩展的能力。同时,也探讨了微服务架构面临的挑战,包括较高的运维要求、分布式系统的复杂性、接口调整的成本等问题。最后,文章提出了实施微服务时应遵循的设计原则。 ... [详细]
  • 本文探讨了Web开发与游戏开发之间的主要区别,旨在帮助开发者更好地理解两种开发领域的特性和需求。文章基于作者的实际经验和网络资料整理而成。 ... [详细]
  • PHP 5.2.5 安装与配置指南
    本文详细介绍了 PHP 5.2.5 的安装和配置步骤,帮助开发者解决常见的环境配置问题,特别是上传图片时遇到的错误。通过本教程,您可以顺利搭建并优化 PHP 运行环境。 ... [详细]
  • 数据管理权威指南:《DAMA-DMBOK2 数据管理知识体系》
    本书提供了全面的数据管理职能、术语和最佳实践方法的标准行业解释,构建了数据管理的总体框架,为数据管理的发展奠定了坚实的理论基础。适合各类数据管理专业人士和相关领域的从业人员。 ... [详细]
  • 深入探讨CPU虚拟化与KVM内存管理
    本文详细介绍了现代服务器架构中的CPU虚拟化技术,包括SMP、NUMA和MPP三种多处理器结构,并深入探讨了KVM的内存虚拟化机制。通过对比不同架构的特点和应用场景,帮助读者理解如何选择最适合的架构以优化性能。 ... [详细]
  • 前言无论是对于刚入行工作还是已经工作几年的java开发者来说,面试求职始终是你需要直面的一件事情。首先梳理自己的知识体系,针对性准备,会有事半功倍的效果。我们往往会把重点放在技术上 ... [详细]
  • Spring Cloud因其强大的功能和灵活性,被誉为开发分布式系统的‘一站式’解决方案。它不仅简化了分布式系统中的常见模式实现,还被广泛应用于企业级生产环境中。本书内容详实,覆盖了从微服务基础到Spring Cloud的高级应用,适合各层次的开发者。 ... [详细]
  • 一面问题:MySQLRedisKafka线程算法mysql知道哪些存储引擎,它们的区别mysql索引在什么情况下会失效mysql在项目中的优化场景&# ... [详细]
  • 本文详细介绍了Java编程语言中的核心概念和常见面试问题,包括集合类、数据结构、线程处理、Java虚拟机(JVM)、HTTP协议以及Git操作等方面的内容。通过深入分析每个主题,帮助读者更好地理解Java的关键特性和最佳实践。 ... [详细]
  • 在当前众多持久层框架中,MyBatis(前身为iBatis)凭借其轻量级、易用性和对SQL的直接支持,成为许多开发者的首选。本文将详细探讨MyBatis的核心概念、设计理念及其优势。 ... [详细]
  • 本文探讨了如何在 PHP 的 Eloquent ORM 中实现数据表之间的关联查询,并通过具体示例详细解释了如何将关联数据嵌入到查询结果中。这不仅提高了数据查询的效率,还简化了代码逻辑。 ... [详细]
  • 深入解析Spring Cloud微服务架构与分布式系统实战
    本文详细介绍了Spring Cloud在微服务架构和分布式系统中的应用,结合实际案例和最新技术,帮助读者全面掌握微服务的实现与优化。 ... [详细]
  • 本文探讨了现代分布式架构的多样性,包括高并发、多活数据中心、容器化、微服务、高可用性和弹性架构等,并介绍了与这些架构相关的重要管理技术,如DevOps、应用监控和自动化运维。文章还深入分析了分布式系统的核心概念、主要用途及类型,同时对比了单体应用与分布式服务化的优缺点。 ... [详细]
  • 最新计算机专业原创毕业设计参考选题都有源码+数据库是近期作品ling取参考你的选题刚好在下面有,有时间看到机会给您发1ssm资源循环利用2springboot校园考勤系统3ssm防 ... [详细]
  • 忙而不盲:探索高效工作的艺术
    本文探讨了在日常工作中如何避免盲目忙碌,通过理解和应对稀有事件、管理负面情绪以及明确学习目标,提升工作效率和个人成长。 ... [详细]
author-avatar
ys2011一号_139
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有