微服务设计原则--笔记

深碍√TFBOYSˉ_ 2024-03-16 09:55 174阅读 0赞

微服务设计原则–笔记

单一职责原则

单一职责原则指的是一个单元(类、方法或者服务等)只应关注系统功能中单独、有界限的一部分。单一职责原则可以帮助我们优雅的开发、敏捷的交付。单一职责也是SOLID原则之一。

接口隔离原则

服务之间的交互应该基于明确定义的接口,而不是共享底层实现。应该尽可能减少服务与服务之间的耦合度

服务自治原则

服务自治是指每个微服务应具备独立的业务能力、依赖与运行环境。在微服务架构中,服务是独立的业务单元,应该与其他服务高度解耦。每个微服务从开发、测试、构建、部署,都应当独立运行。

轻量级通信机制

微服务之间应通过轻量级的通信机制进行交互。
轻量级的通信机制的特点是体量较轻、跨语言、跨平台。
常用的轻量级通信协议有:
REST协议,AMQP协议、STOMP协议、MQTT协议

微服务粒度

应当使用合理的粒度划分微服务,而不是一味的把服务做小。在微服务设计阶段,就应确定其边界,微服务之间应相对独立并保持松耦合,可以使用DDD领域驱动设计中的【界限上下文】划分微服务边界、确定微服务粒度。但DDD不是银弹,实际开发还要结合具体业务场景进行微服务粒度设计。

无状态原则

每个微服务应该是无状态的,即在处理请求时不依赖于之前的请求状态。这有助于实现横向扩展和容错。

面向服务的架构

微服务应该按照业务领域划分,并设计成可以独立部署的服务。每个服务都应该有自己的数据库以及处理数据的逻辑。

可拓展性和可伸缩性

微服务应该优先考虑可拓展性,它应该能够方便地增加或移除服务实例以适应流量变化

健壮性和容错能力

微服务系统应对故障有所准备。这包括设计失败时的重试、降级及恢复策略等。

DevOps

DevOps文化可以确保开发人员和运维人员之间的紧密协作和合作。这样能够加快开发周期,提高微服务系统的稳定性和安全性


以上是一些常见的微服务设计原则,需要根据实际情况进行具体的应用和调整。

发表评论

表情:
评论列表 (有 0 条评论,174人围观)

还没有评论,来说两句吧...

相关阅读

    相关 服务设计原则--笔记

    微服务设计原则–笔记 单一职责原则 单一职责原则指的是一个单元(类、方法或者服务等)只应关注系统功能中单独、有界限的一部分。单一职责原则可以帮助我们优雅的开发、敏捷

    相关 服务设计原则和解决方案

    微服务架构现在是谈到企业应用架构时必聊的话题,微服务之所以火热也是因为相对之前的应用开发方式有很多优点,如更灵活、更能适应现在需求快速变更的大环境。 本文将介绍微服务架构的

    相关 服务设计原则之AKF原则

    在设计微服务的时候,我们一般会遵循以下4个原则: 1)AKF拆分原则 2)前后端分离原则 3)无状态服务 4)restful的通信风格 AKF 把系统扩展分为以下三个

    相关 服务设计,拆分原则

    目录 一、AKF拆分原则 1,Y轴(功能)关注应用中功能划分,基于不同的业务拆分 2,X轴(水平扩展)关注水平扩展,也就是“加速器解决问题” 3,Z轴(数据分区)关注服

    相关 服务设计读书笔记

    微服务架构的优势: 1、较小的粒度 2、在解决问题的方法上能够给予更多的选择 相比动态库更新,相关的依赖都要更新是一个很大的优点。 3、微服务定义为可以在2周之内改写一

    相关 服务设计原则

    和数据库设计中的N范式一样,微服务也有一定的设计原则,这些原则指导我们更加合理的架构微服务。 单一职责原则 单一职责原则指的是一个单元(类、方法或者服务等)只应关注整个

    相关 服务设计原则

    一 前言 微服务是一种架构风格。一个大型的复杂软件应用,由一个或多个微服务组成。系统中的各个微服务可被独立部署,各个微服务之间是松耦合的。每个微服务仅关注于完成一件任务并