微服务与分布式
文章平均质量分 91
TracyCoder123
人生是旷野,不是赛道。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
分布式算法(八):一致性哈希——分布式系统的负载均衡利器
需先将下线节点的全量数据迁移至顺时针下一跳节点,迁移量约为总数据量的1/原节点数,若为故障节点需先通过副本同步数据,可能产生额外的副本校验成本;其次仅需迁移新增节点区间对应的局部数据,迁移量约为总数据量的1/(原节点数+1),数据传输与重新存储的成本较低,同时因仅局部缓存失效,对业务服务的性能影响极小,无需承担全量缓存穿透带来的数据库压力成本。虚拟节点的核心思路是:给每个物理节点“克隆”出多个虚拟节点,让这些虚拟节点均匀分布在哈希环上,数据先映射到虚拟节点,再关联到物理节点。原创 2025-11-30 21:04:50 · 1042 阅读 · 0 评论 -
分布式算法(七):BASE理论——分布式系统的“最终一致性”指导思想
BASE 是Basically Available(基本可用)、Soft State(软状态)、Eventually Consistent(最终一致性)原则通俗含义生活化例子(电商下单)基本可用(BA)系统故障时,核心功能仍能使用,而非完全不可用(允许性能降级、部分功能不可用)。秒杀活动时服务器压力大,页面加载变慢(性能降级),但下单、支付核心功能正常。软状态(S)允许系统存在中间状态(如“下单中”“支付中”),中间状态不影响系统整体可用性。原创 2025-11-27 13:37:23 · 833 阅读 · 0 评论 -
分布式算法(六):雪花算法(Snowflake),分布式系统的全局唯一ID生成方案
在分库分表、微服务等分布式场景中,传统单库自增主键无法保证全局唯一性(多库 / 多表会出现 ID 重复),而雪花算法(Snowflake)是解决这一问题的经典方案 —— 它能在分布式环境下生成有序、高效、无重复的 64 位 Long 型 ID,无需依赖数据库等第三方组件,广泛应用于 Java 后端、大数据等领域。解决方案:如果当前时间比上一次生成ID的时间还早,就“等一等”,直到时间超过上一次,再生成ID——避免用旧时间+相同序列号导致重复。(就像按“年份+序号”排序的发票,越晚开的发票号越大)原创 2025-11-27 13:32:01 · 566 阅读 · 0 评论 -
微服务概念理解学习笔记
早期公司小,1个人(单点系统)负责所有工作(进货、销售、售后、财务);公司壮大后,1个人干不完,于是分拆成多个部门(采购部、销售部、财务部),每个部门在不同办公室(不同服务器/节点)办公,但共同协作完成“电商运营”这个核心任务——这就是分布式系统。分布式系统是指:将一个复杂的业务系统,拆分成多个独立的“子系统/节点”,这些节点通过网络通信协作,共同完成整体业务目标的系统架构。核心是“拆分+协作”,目的是解决单点系统的瓶颈。原创 2025-11-25 13:02:42 · 155 阅读 · 0 评论 -
微服务框架选型学习笔记
Java微服务框架的核心选择集中在Spring Cloud(含Alibaba)和Dubbo两大体系:前者胜在“全栈治理”,后者胜在“高性能RPC”;而Quarkus、Micronaut则是云原生场景下的新兴选择。实际选型时,优先考虑团队技术栈、业务对性能的要求、部署环境(传统服务器/云原生),避免盲目追求“新技术”。原创 2025-11-25 13:01:43 · 230 阅读 · 0 评论 -
Dubbo+Zookeeper怎么实现的服务注册与发现
Dubbo 则封装了服务注册、发现、健康检查、负载均衡等业务逻辑,二者协同实现微服务间的动态通信。以下从底层架构、核心流程、Zookeeper 节点结构、关键机制四个维度深度拆解。Dubbo 会在 Zookeeper 中创建固定格式的节点树,用于存储服务的全量元数据,(关联 Provider 会话,会话失效则节点删除)、Dubbo 与 Zookeeper 的集成核心是。(Consumer 监听服务节点变更)、(保障集群模式下服务元数据的一致性)。:Zookeeper 的。原创 2025-11-25 12:03:36 · 205 阅读 · 0 评论 -
微服务注册中心基础(五):Zookeeper 适用场景
选型依据推荐注册中心需分布式协调(锁、选主)+ Dubbo架构Zookeeper强一致性(CP)+ 金融/核心服务高可用性(AP)+ 中小型Spring Cloud大规模实例 + 一站式(注册+配置)Nacos跨数据中心 + 服务网格Consul已有Zookeeper集群 + 中等规模服务Zookeeper(复用)原创 2025-11-24 13:50:05 · 234 阅读 · 0 评论 -
微服务注册中心基础(三):分布式一致性协议
分布式一致性协议是构建现代分布式系统的核心技术基础,其中作为三大主流协议,在设计理念、实现机制和应用场景方面各有特色。本文基于 CAP 理论深入分析了这三种协议的核心机制,通过对比分析揭示了它们在节点角色、选举流程、日志复制等关键技术点的差异。研究发现,,在 3 节点集群中可实现 8-12ms 写延迟和 12,000ops/s 吞吐量;,写延迟 15-20ms,吞吐量 4,500ops/s;,在有序状态复制场景下表现优异,写延迟仅 3-5ms,吞吐量超过 45,000ops/s。原创 2025-11-24 13:26:43 · 306 阅读 · 0 评论 -
微服务注册中心基础(二):CP架构原理
在分布式系统中,CP架构(Consistency + Partition Tolerance)是与AP架构并列的核心设计范式,尤其适用于对数据一致性要求极高的场景(如金融交易、分布式协调)。由于网络不可靠是分布式系统的常态(必须保证P),CP架构选择。原创 2025-11-24 12:16:43 · 81 阅读 · 0 评论 -
微服务注册中心基础(一):AP架构原理
(Availability + Partition Tolerance)是注册中心的核心设计范式之一,尤其适用于追求高可用、容忍短暂数据不一致的分布式场景(如微服务高频服务注册/发现)。本文将从原理、特性、典型实现、适用场景等维度,全面解析AP架构,帮助开发者精准选型和落地。当网络分区发生时,AP架构会选择「继续提供服务」(保证A),而不是等待分区恢复后再同步数据(放弃强C)。在微服务架构中,注册中心的架构设计直接决定了服务发现的可用性、一致性和性能。要理解AP架构,首先需要回顾分布式系统的核心理论——原创 2025-11-24 12:04:10 · 631 阅读 · 0 评论 -
Dubbo 架构入门:组件、流程、方法、容错机制的通俗讲解
然后在接口测试工具中访问接口:访问成功!原创 2025-11-20 13:06:35 · 229 阅读 · 0 评论 -
APISIX 简介:云原生 API 网关的架构与实践
APISIX(Apache APISIX)是一个高性能、可扩展的云原生 API 网关,基于 Nginx 和 etcd 构建。作为微服务架构的流量入口,它提供了动态路由、负载均衡、服务发现、认证授权、可观测性等核心能力。其设计遵循"云原生"和"可扩展"理念,支持热加载、动态配置和插件化架构,已成为 Apache 顶级项目,被广泛应用于金融、电商、互联网等领域的关键业务场景。原创 2025-06-17 16:54:07 · 1379 阅读 · 0 评论 -
分布式算法(五):初识ZAB协议
Zookeeper 是一种分布式协调服务,它帮助分布式系统中的进程或服务之间进行协作。配置管理:应用程序可以在 Zookeeper 中存储配置信息,并且可以在配置发生变化时得到通知。命名服务:为分布式系统中的组件提供一个统一的名字空间,类似 DNS 之于互联网。分布式同步:提供机制以确保多个节点之间的操作能够按照一定的顺序执行。组成员管理:跟踪集群中成员的状态,检测成员的加入和离开。领导选举:在一组服务器中选出一个领导者来协调某些活动。Znodes(节点)原创 2024-12-31 13:00:54 · 1116 阅读 · 0 评论 -
分布式算法(四):Basic Paxos协议初探(角色、阶段)
在这个背景下,Paxos协议应运而生。想象一下,如果你正在使用一款流行的社交网络应用,无论是在世界的哪个角落,无论服务器集群内部发生了什么变化,你都能够顺利发布你的状态更新或与朋友交流,这就是Paxos等共识算法所保障的结果。在一个健康的Paxos系统中,少数派的意见不足以影响最终的决策结果,因为系统的设计原则是必须有超过一半的节点(即多数派)同意才能使提议生效。然而,随着节点数量的增加和地理分布的扩大,如何确保这些分散在全球各地的计算机能够像一个协调有序的整体一样工作,成为了工程师们面临的重大挑战之一。原创 2024-12-26 18:07:05 · 953 阅读 · 0 评论 -
分布式算法(三):分布式事务的解决方案——三阶段提交协议
文章目录一、核心实现原理优化三个阶段1.CanCommit询问阶段2.PreCommit预提交阶段3.DoCommit提交阶段二、故障恢复1.协调者发生故障心跳机制解决数据不一致问题2.部分参与者发生故障三、优缺点分析优点缺点三阶段提交协议(Three-Phase Commit, 3PC)是分布式系统中用于保证跨多个节点的数据一致性的算法。它是在两阶段提交(2PC)的基础上发展起来的,旨在解决2PC的一些局限性,如协调者单点故障和阻塞问题。3PC通过引入额外的准备阶段来尝试减少阻塞时间,并且允许参与者在某原创 2024-12-24 13:58:04 · 1058 阅读 · 0 评论 -
分布式算法(二):分布式事务的解决方案——两阶段提交协议
两阶段提交协议(2PC)对强一致性的CP架构系统至关重要,它通过确保所有分布式节点在事务处理上达成一致,要么全部成功提交,要么全部回滚,从而维护了全局数据的一致性和完整性,同时提供了可靠的故障恢复机制,尽管可能牺牲一定的系统可用性和性能。这对于需要高度可靠和一致性的应用场景,如金融交易、分布式数据库操作等,具有不可替代的应用价值。然而,值得注意的是,虽然2PC非常适合强一致性的需求,但它也有一些缺点,特别是在高可用性和性能方面。原创 2024-12-23 17:28:50 · 1447 阅读 · 0 评论 -
分布式算法(一):从ACID和BASE到CAP
BASE理论是“基本可用(Basically Available),软状态(Soft State),最终一致性(Eventual Consistency)”的缩写,它是对ACID的一种放松,旨在为高可用性和分区容忍性提供支持。这意味着在一个分布式的环境中,所有的节点需要同步进行更新,以保持数据的一致性。探索分布式系统中关于数据一致性和可用性的哲学——从ACID到BASE再到CAP定理,这是一个充满挑战和技术深度的话题,它不仅影响着我们如何设计和实现数据库,也深刻地改变了现代互联网应用的架构方式。原创 2024-12-19 18:18:13 · 1091 阅读 · 0 评论 -
微服务注册中心基础(四):Zookeeper部署服务、基本概念与操作
持久节点 (Persistent Node)不会自动删除。可以有子节点。适用于需要长期存在的数据。临时节点 (Ephemeral Node)客户端会话结束时自动删除。不能有子节点。适用于表示客户端的存在或状态。持久顺序节点 (Persistent Sequential Node)不会自动删除。创建时自动添加序列号。适用于需要唯一标识符的场景,例如任务分配。临时顺序节点 (Ephemeral Sequential Node)客户端会话结束时自动删除。创建时自动添加序列号。原创 2024-10-12 21:54:00 · 1609 阅读 · 0 评论
分享