• 分布式系统架构设计读后


    美团在对物流探索的过程中,积累了分布式高并发系统的建设经验,其中主要有两点:

    1.即时物流业务对故障和高延迟的容忍度极低,在业务复杂度提升的同时,要求系统具有分布式、可扩展、可容灾的能力。即时物流系统阶段性的逐步实施分布式系统架构升级,最终解决了系统宕机的风险。

    2.围绕成本、效率、体验核心三要素,即时物流体系大量结合了AI技术,从定价、ETA、调度、运力规划、运力干预、补贴、核算、语音交互、LBS挖掘、业务运维、指标监控等方面,业务突破结合架构升级,打到促规模、保体验、降成本的效果。

    分布式架构是相对于集中式架构的一种架构体系,分布式架构适用CAP理论(Consistency一致性,Availability可用性,Partition Tolerance分区容忍性)

    在分布式架构中,一个服务器部署在多个对等节点中,节点间通过网络通信,多节点共同组成集群来提供高可用、一致性服务。

    在早期美团按照业务领域划分成多个垂直服务架构,随着业务的不断发展,从可用性角度进行了分层服务架构,再后来业务发展越发复杂后,从运维、质量等多个角度考量后,逐步演进到微服务架构。

    这里体现了两个原则:不宜过早进入微服务架构的设计中;好的架构是演进的而不是提前设计的

    对微服务的一点理解:

    在早期系统开发中,以购物网站为例,大致需要完成两项任务,一个是网站首页,一个是后台管理,

    但随着系统不断增加,功能会变得更加复杂,例如购物网站要进行某某促销活动,这时系统的边界会随着一次次扩充而不断变模糊,并且数据库的调用也会变得十分混乱,十分不合理,

    引入微服务,实际上是一种抽象,通过将系统服务拆分成更小的功能模块,甚至将数据库拆分,各服务相互隔离,提升了系统的可用性、实时性。

    但同时微服务也会带来许多问题,例如不容易精确定位问题发生的位置,测试、开发工作复杂,因此小产品不宜盲目追求微服务,即使是美团也是随着需求不断增加而逐步演进到微服务。

  • 相关阅读:
    SQL INNER JOIN
    SQL JOIN
    SQL OUTER JOIN
    SQL CROSS JOIN
    SQL 基础:Select语句,各种join,union用法
    Morton Code
    vs 字体
    sql 语言
    sqllite3
    linux怎么区别文本文件和二进制文件
  • 原文地址:https://www.cnblogs.com/Arisf/p/16004009.html
Copyright © 2020-2023  润新知