0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

微服务架构的特点_微服务架构适用场景

姚小熊27 来源:柯之梦.博客 作者:柯之梦.博客 2021-05-17 17:28 次阅读

微服务架构的特点

微服务架构是一项在云中部署应用和服务的新技术。

架构特征如下:

1)组件以服务形式来提供

微服务是面向服务的

2)围绕业务功能进行组织

微服务更倾向于围绕业务功能对服务结构进行划分、拆解。这样的服务是针对业务领域有着完整实现的软件,

它包含使用接口、持久存储以及对应的交互。因此团队应该是跨职能的,包含完整的开发技术--用户体验、数据库和项目管理。

3)产品不是项目

传统的开发模式致力于提供一些被认为是完整的软件,一旦开发完成,软件将移交给维护或实施部门,然后开发组就可以解散了。

而微服务要求开发团队对软件产品的整个生命周期负责。这要求开发者每天都要关注软件产品的运行情况,并与用户联系的更紧密,

同时承担一些售后服务支持。越小的服务粒度越容易促进用户与服务提供商之间的关系。

4)强化终端与弱化通道

微服务的应用致力于松耦合和高内聚,它们更喜欢简单的REST风格,而不是复杂的协议(例如BPEL或集中式框架)。要么采用轻量级

消息总线(如RabbitMQ)来发布消息。

5)分散治理

跟传统的集中式管理有很大区别,微服务把整体式框架中的组件分拆成不同的服务,在构建时将会有更多的选择。

6)分散数据管理

当整体式的应用使用单一逻辑数据库对数据进行持久化时,企业通常会选择在应用的范围内使用一个数据库。微服务让每个服务管理

自己的数据库。

7)基础设施自动化

云计算特别是AWS的发展减少了构建、发布和运维微服务的复杂性。微服务的团队更加依赖于基础设施的自动化,毕竟发布工作相当无趣。

8)容错性设计

任务服务都可能因为供应商的不可靠而出现故障,微服务应为每个应用的服务和数据中心提供日常的故障检测和修复。

9)改进设计

由于设计会不断更改,微服务所提供的服务应该能够替换,而不是长久的发展。

微服务架构适用场景

随着互联网的高速发展,微服务现在已经成了热门话题,我们今天就来聊聊微服务架构的使用场景,在之前,我们先讲讲单体架构,单体架构就是我们最传统的项目前端代码和后端代码耦合在一起。

单体架构的适用场景

业务场景简单,功能不复杂,研发人员较少。

公司处于创业初期:为了生存,需要的是快速开发出功能,然后到市场上试错。

性能要求及其苛刻:一些对性能要求比较高的系统,例如股票软件。

需求比较稳定的系统也不适合做成微服务,例如:公司内部OA,考勤系统等。

微服务的使用场景

需求层面:

公司发展到一定规模,需求变化频繁,并且研发团队达到10人左右

性能层面:

对响应时间要求不苛刻的系统,比如:电商系统

数据一致性层面:

尽量避免分布式事务问题,对数据一致性不太高可保证最终一致性

微服务的目的

项目快速迭代

项目持续交付
责任编辑:YYX

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 微服务
    +关注

    关注

    0

    文章

    117

    浏览量

    7240
  • 微服务架构
    +关注

    关注

    0

    文章

    22

    浏览量

    2901
收藏 人收藏

    评论

    相关推荐

    微服务架构和CQRS架构基本概念介绍

    微服务架构现在很热,到处可以看到各大互联网公司的微服务实践的分享总结。但是,我今天的分享和微服务没有关系,希望可以带给大家一些新的东西。如果一定要说
    发表于 05-22 09:03

    微服务网关gateway的相关资料推荐

    采用微服务架构,显示在产品页上的数据会分布在不同的微服务上,比如:购物车服务——购物车中的件数订单服务——历史订单目录
    发表于 12-23 08:19

    微服务架构与实践摘要

    本文主要类容是对微服务架构与实践摘要解析。微服务架构中的 “微” 体现了其核心要素,即服务的微型化,就是每个
    的头像 发表于 02-07 16:57 5914次阅读
    <b class='flag-5'>微服务</b><b class='flag-5'>架构</b>与实践摘要

    微服务架构多微才合适

    大家也都认可,随着数据量、流量、业务复杂度的提升,服务架构架构演进中的必由之路,今天要讨论的话题是:微服务架构多“微”才合适?
    的头像 发表于 02-07 17:14 3135次阅读
    <b class='flag-5'>微服务</b><b class='flag-5'>架构</b>多微才合适

    微服务优势_微服务架构的好处与不足

    微服务是用一组小服务的方式来构建一个应用,服务独立运行在不同的进程中,服务之间通过轻量的通讯机制(如RESTful接口)来交互,并且服务可以
    发表于 02-23 11:24 4276次阅读

    什么是微服务架构_微服务架构的优缺点及应用

    什么是微服务架构 简单地说,微服务是系统架构上的一种设计风格, 它的主旨是将一个原本独立的系统拆分成多个小型服务,这些小型
    的头像 发表于 06-02 10:03 1.7w次阅读
    什么是<b class='flag-5'>微服务</b><b class='flag-5'>架构</b>_<b class='flag-5'>微服务</b><b class='flag-5'>架构</b>的优缺点及应用

    SOA架构微服务架构的主要区别

    SOA和微服务架构一个层面的东西,而对于ESB和微服务网关是一个层面的东西,一个谈到是架构风格和方法,一个谈的是实现工具或组件。SOA架构
    的头像 发表于 05-04 14:11 5389次阅读
    SOA<b class='flag-5'>架构</b>和<b class='flag-5'>微服务</b><b class='flag-5'>架构</b>的主要区别

    微服务架构有哪些_微服务架构设计模式

    小伙伴们知道常用的微服务架构框架有哪些吗?上回我们介绍了一些常用的微服务架构设计模式,这次我们就来了解一下一些常用的微服务
    的头像 发表于 05-17 17:06 2.8w次阅读
    <b class='flag-5'>微服务</b><b class='flag-5'>架构</b>有哪些_<b class='flag-5'>微服务</b><b class='flag-5'>架构</b>设计模式

    微服务软件架构应用研究综述

    自2014年,微服务架构概念经Martin Flower提出以来,受到广泛关注,为更好了解微服务架构风格,本文首先分析、梳理了软件架构的发展
    发表于 05-26 09:26 2次下载

    在AWS上实施无服务微服务架构

    我们之前关于 AWS 无服务器平台的文章讨论了无服务器多层架构的基本原理和优势。在本文中,我们将解释企业如何使用AWS 云实施无服务微服务
    的头像 发表于 11-30 15:38 717次阅读
    在AWS上实施无<b class='flag-5'>服务</b>器<b class='flag-5'>微服务</b><b class='flag-5'>架构</b>

    什么是微服务架构

    在Medium,我们的技术堆栈始于2012年的单片Node.js应用程序。我们已经构建了几个卫星服务,但我们还没有制定一个系统地采用微服务架构的策略。随着系统变得越来越复杂并且团队不断发展,我们在2018年初转向了
    的头像 发表于 02-24 11:15 1125次阅读
    什么是<b class='flag-5'>微服务</b><b class='flag-5'>架构</b>?

    从分层架构微服务架构介绍(五)

    ,但服务划分的粒度相比微服务要更粗。SBA 与微服务架构一大不同是, 它允许各个服务间共享同一个数据库实例 ,这也使得 SBA 在
    的头像 发表于 05-10 17:02 592次阅读
    从分层<b class='flag-5'>架构</b>到<b class='flag-5'>微服务</b><b class='flag-5'>架构</b>介绍(五)

    springcloud微服务架构

    Spring Cloud是一个开源的微服务架构框架,它提供了一系列工具和组件,用于构建和管理分布式系统中的微服务。它基于Spring框架,旨在通过简化开发过程和降低系统复杂性来帮助开发人员构建弹性
    的头像 发表于 11-23 09:24 387次阅读

    docker微服务架构实战

    随着云计算和容器化技术的快速发展,微服务架构在软件开发领域中变得越来越流行。微服务架构将一个大型的软件应用拆分成多个小型的、独立部署的服务
    的头像 发表于 11-23 09:26 314次阅读

    设计微服务架构的原则

    微服务是一种软件架构策略,有利于改善整体性能和可扩展性。你可能会想,我的团队需不需要采用微服务,设计微服务架构有哪些原则?本文会给你一些灵感
    的头像 发表于 11-26 08:05 235次阅读
    设计<b class='flag-5'>微服务</b><b class='flag-5'>架构</b>的原则