自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

萧曳丶

多品味

  • 博客(908)
  • 资源 (321)
  • 收藏
  • 关注

原创 HotSpot JVM 运行结构 图解

JVM 结构

2022-04-01 16:02:32 873 2

原创 Vue 中父子组件之间最常用的业务交互场景

Vue3父子组件通信核心方式:1)父传子通过props单向传递数据;2)子传父通过$emit触发事件;3)父调子方法使用ref+defineExpose;4)双向绑定采用v-model语法(modelValue+update:modelValue)。遵循单向数据流原则,避免直接使用$parent破坏封装性。组合式API推荐使用defineProps/defineEmits实现类型安全的组件通信。

2026-02-11 16:10:10 599

原创 MongoDB 核心原理 + 高频面试题

MongoDB作为主流文档型NoSQL数据库,具有灵活文档模型、高性能和易扩展特点。其核心原理包括:BSON存储格式、WiredTiger存储引擎、B+树索引结构、副本集高可用机制和分片集群扩展方案。面试重点考察存储原理、索引优化、副本集选举、分片策略及与MySQL对比。典型问题涉及ObjectId构成、最左前缀原则、查询性能优化、选举机制等。生产环境需关注数据倾斜、慢查询排查和内存优化。MongoDB适合非结构化数据场景,但不适用于强事务要求的核心业务。掌握这些核心知识点可有效应对Java后端面试中的Mo

2026-02-05 17:28:55 628

原创 Docker 面试题

Docker核心技术摘要:Docker是基于Linux命名空间、Cgroups和UnionFS的容器引擎,实现"一次构建,处处运行"。核心组件包括镜像(静态模板)、容器(运行实例)和仓库。相比虚拟机,Docker启动更快(秒级)、资源占用更少(MB级镜像),但隔离性较弱。通过Dockerfile构建镜像时需注意分层优化(多阶段构建、精简基础镜像)。数据持久化推荐使用Volume,网络通信常用bridge模式。底层依赖Namespace实现隔离(PID/网络等)和Cgroups实现资源限制

2026-02-05 14:30:03 702

原创 BeanFactory 和 FactoryBean区别

Spring框架中BeanFactory和FactoryBean是两个核心概念但功能不同:BeanFactory是Spring IoC容器的根接口,负责管理所有Bean的生命周期(实例化、配置、依赖注入);而FactoryBean是特殊接口,用于封装复杂Bean的创建逻辑。当需要获取FactoryBean创建的Bean时,Spring会调用其getObject()方法而非返回FactoryBean本身。BeanFactory适合作为基础容器使用,FactoryBean则适用于需要复杂初始化的场景(如连接池、

2026-02-05 11:04:32 572

原创 Java 中的 String 类为何被设计成不可变(Immutable)

Java中的String被设计为不可变对象,主要原因包括:1.安全性,防止敏感数据被篡改;2.支持字符串常量池复用,提升内存利用率;3.天生线程安全,无需同步锁;4.缓存哈希值,优化集合操作性能。不可变性体现在String对象一旦创建,其内容无法修改,所有"修改"操作实际都会创建新对象。这种设计虽然可能带来临时对象开销,但通过StringBuilder/StringBuffer可解决频繁修改的需求。

2026-02-04 17:10:43 401

原创 主流消息队列(MQ)的核心架构、底层原理

主流消息队列架构与选型指南 本文系统分析了五种主流消息队列架构:1)RabbitMQ基于AMQP协议,提供灵活路由和低延迟;2)Kafka采用分区并行设计,专为高吞吐场景优化;3)RocketMQ融合多种优势,支持事务和延时消息;4)ActiveMQ兼容JMS规范但性能较弱;5)Pulsar作为云原生新秀支持分层存储。通过对比吞吐量、延迟、可靠性等核心指标,给出选型建议:路由复杂选RabbitMQ,大数据场景用Kafka,金融交易考虑RocketMQ,云原生架构推荐Pulsar。文章还总结了面试常见考点,包

2026-02-04 10:42:59 510

原创 懒加载单例模式中DCL方式和原理解析

DCL(双重检查锁)是Java中高性能懒加载单例模式的实现方案,通过两次检查(第一次无锁快速判断,第二次加锁后确认)和volatile关键字确保线程安全。volatile防止指令重排,避免获取未初始化实例。标准实现包含私有构造器、volatile静态变量和同步代码块。DCL解决了传统懒汉式每次调用都加锁的性能问题,适用于高并发场景,但需注意避免遗漏volatile或二次检查。虽然实现稍复杂,但在现代JDK中安全可靠,是生产环境常用方案。

2026-02-04 10:30:25 434

原创 单例模式 7 种实现方式对比表

本文总结了7种单例模式的实现方式及其特点。主要包括:饿汉式(简单但浪费内存)、懒汉式(线程不安全)、同步懒汉式(安全但性能差)、双重检查锁(DCL)、静态内部类(推荐方案)、枚举(最佳实践)和ThreadLocal单例(线程隔离)。分析比较了各方案在线程安全、懒加载、性能、反射/序列化防护等方面的优缺点,并给出适用场景建议:简单场景用饿汉式,标准需求推荐静态内部类,严格要求用枚举,线程隔离用ThreadLocal。特别指出只有枚举能天然防止反射破坏,同时提醒注意序列化、克隆和多类加载器问题。

2026-02-04 10:25:40 273

原创 Nginx 高频面试题(含答案)

Nginx面试核心要点摘要: 1.基础概念:Nginx是高性能Web服务器/反向代理,采用master-worker多进程模型,优势包括高并发(epoll)、轻量级、热部署。 2.核心配置:配置文件含全局/events/http/server块,location匹配优先级为精准>前缀>正则>普通,rewrite用于URL重写。 3.核心功能: -反向代理:支持轮询/加权/ip_hash等负载策略 -动静分离:静态资源直返,动态请求转发 -限流安全:连接/请求限流,HTTPS/防盗链配置 4

2026-02-04 10:15:37 559

原创 Nginx常用配置

本文介绍了Nginx的常用配置场景,包括:1)全局基础配置,设置工作进程数和连接参数;2)静态资源服务,优化前端文件传输和缓存;3)反向代理配置,实现后端服务转发;4)负载均衡策略,包括轮询、ip_hash等方式;5)HTTPS安全配置,实现HTTP强制跳转;6)请求限流设置,防止恶意攻击。最后提供了配置检查命令nginx-t和重载命令nginx-s reload,确保配置生效。这些配置涵盖了Nginx作为Web服务器和反向代理的核心功能,可根据实际需求灵活组合使用。

2026-02-04 10:12:15 94

原创 MySQL 语句书写顺序与执行顺序对比速记表

SQL查询执行顺序及核心要点: 执行顺序:FROM/JOIN→WHERE→GROUPBY→聚合计算→HAVING→SELECT→DISTINCT→ORDERBY→LIMIT 关键区别:WHERE过滤原始数据(不可用聚合函数),HAVING过滤分组结果(可用聚合函数) 别名使用:ORDERBY可使用SELECT定义的别名,因其在SELECT后执行 核心逻辑:先确定数据源,逐步过滤、分组、聚合,最后处理结果集

2026-02-04 10:05:26 83

原创 Java 中 SPI(Service Provider Interface)机制的使用场景

摘要:SPI(Service Provider Interface)是Java中实现模块解耦和动态扩展的核心机制。其核心流程包括定义接口、第三方实现、META-INF/services目录配置和ServiceLoader加载。主要应用场景包括:1)框架扩展点设计(如JDBC驱动加载、Dubbo组件扩展);2)插件化架构开发(如日志框架适配);3)多实现类动态选择(如配置中心适配);4)第三方库集成(如Redis客户端兼容);5)模块化服务发现。SPI优势在于实现接口与实现的解耦、支持热插拔、符合开闭原则,但

2026-02-03 11:30:19 568

原创 Java 中单例对象写法

本文系统介绍了Java单例模式的7种实现方式,包括饿汉式、懒汉式、双重校验锁、静态内部类和枚举单例等。重点分析了每种写法的线程安全性、懒加载特性、实现原理及适用场景,其中双重校验锁(DCL)和枚举单例是实际开发中最常用的方案。特别强调了volatile在DCL中的作用(防止指令重排序)和枚举单例的绝对安全性(防反射/序列化)。文章还对比了不同实现方式的优缺点,为开发者在不同场景下的单例实现选择提供了清晰指导,是掌握单例模式的实用参考。

2026-02-03 11:27:53 620

原创 wait和notify这个为什么要在synchronized代码块中?

Java中wait()和notify()必须在synchronized代码块内使用,主要出于三个原因:一是防止"丢失唤醒"问题,确保条件检查和等待操作的原子性;二是操作对象监视器的前提要求,只有持有锁的线程才能操作等待队列;三是避免虚假唤醒后的逻辑错误。wait()会释放当前锁,唤醒后需重新竞争锁。正确用法是在synchronized块内用while循环检查条件,保证线程安全。这种设计是多线程通信的基础安全机制。

2026-02-03 10:27:35 529

原创 前端工程化项目中全类型配置文件的详细解析

本文系统梳理了前端项目中的核心配置文件体系。首先区分了静态配置(json/ini)和动态配置(js/ts),后者支持逻辑判断更灵活。然后详细介绍了各类配置文件的用途和使用场景:1)基础必备文件(package.json/.gitignore/README.md);2)构建工具配置(Vite/Webpack/Rollup);3)框架专属配置(Vue/React);4)代码规范(ESLint/Prettier);5)环境部署(env/Nginx);6)团队协作(Husky/CommitLint)。文章特别强调现

2026-01-29 10:01:29 1030

原创 ResponseBodyAdvice 实现接口返回结果的全局统一封装

本文介绍了实现SpringBoot统一返回格式的核心步骤:1)定义通用返回类Result封装状态码、提示信息和业务数据;2)通过ResponseBodyAdvice接口实现返回值自动封装;3)配置全局异常处理器确保异常场景格式统一;4)使用@IgnoreResponseAdvice注解处理特殊接口。关键点包括处理String类型返回值、避免重复封装、配合异常处理等。该方案能规范接口格式,提升代码简洁性和维护性,同时提供灵活的特殊场景处理机制。

2026-01-28 17:20:25 599

原创 CSS3 业务开发高频样式

本文系统总结了CSS3在业务开发中的核心应用,分为四大模块:1)布局实现(Flex弹性布局/Grid网格布局/calc动态计算);2)视觉美化(圆角/阴影/渐变/文字处理);3)交互体验(过渡/变换/动画/毛玻璃效果);4)响应式适配(媒体查询/视口单位)。文章提供了可直接复用的高频样式代码示例,如flex-center、text-ellipsis等工具类,并推荐封装常用样式提升开发效率。掌握这些CSS3特性可覆盖80%以上的业务场景,实现高效、美观的页面开发。

2026-01-28 10:56:21 1117

原创 JavaScript 闭包和高级用法

闭包是JavaScript中函数能够访问并记住其外部作用域变量的特性,即使外部函数已执行完毕。其核心价值在于实现变量私有化和状态保留,常见应用包括计数器、柯里化、防抖节流等。闭包基于词法作用域和垃圾回收机制实现,需注意内存泄漏风险,可通过手动解除引用避免。ES6后虽有模块化等替代方案,但闭包仍是JS核心特性,广泛应用于函数式编程和框架底层。理解闭包需结合作用域链、执行上下文等概念,通过实践掌握其精髓。

2026-01-28 10:14:30 840

原创 JavaScript 函数各种写法和场景

日常开发优先级:函数声明 > 箭头函数 > ES6 方法简写 > 具名函数表达式 > 匿名函数表达式 > IIFE;箭头函数是核心简化方案,但核心避坑点是不做对象 / 类方法,其余回调场景无脑用;ES6 + 写法完全替代旧写法:类方法替代传统构造函数、模块替代 IIFE、箭头函数替代大部分匿名函数表达式。

2026-01-28 10:06:39 633

原创 Java SPI 核心知识点梳理

Java SPI机制是一种基于接口的服务发现机制,通过META-INF/services/配置文件实现接口与实现类的解耦,支持动态加载第三方实现。核心组件包括服务接口、实现类、配置文件和ServiceLoader加载器。典型应用如JDBC驱动加载,通过线程上下文类加载器打破了双亲委派模型。SPI具有解耦、扩展性好等优点,但也存在无法按需加载、线程不安全等缺点。工业级框架如Dubbo、Spring等提供了增强版SPI解决方案。常见面试问题包括SPI组件、JDBC驱动加载原理及双亲委派模型的打破方式等。

2026-01-20 19:46:25 858

原创 JMM(Java 内存模型)浅谈

摘要:Java内存模型(JMM)是规范多线程访问共享变量的抽象规则,区别于JVM物理内存结构。JMM解决并发三大问题:可见性(volatile强制主内存读写)、原子性(synchronized/原子类保证)、有序性(volatile禁止指令重排序)。核心机制包括happens-before规则和内存屏障实现,其中volatile通过StoreLoad等屏障保证可见性和有序性。典型应用场景包括DCL单例模式(volatile防指令重排序)、状态标记、原子类操作等。理解JMM规则是编写线程安全代码的基础,需重点

2026-01-20 19:44:32 778

原创 JVM 虚拟机类加载机制浅谈

摘要:JVM类加载机制包含7个生命周期阶段(加载→验证→准备→解析→初始化→使用→卸载),其中初始化阶段执行<clinit>()方法是核心。准备阶段为static变量赋默认值(final static常量直接赋显式值),而初始化阶段才执行静态赋值和静态代码块。类加载器采用双亲委派模型(启动→扩展→应用类加载器),确保类唯一性和安全性。关键特性包括按需加载、单次加载终身复用,初始化由7种主动使用场景触发。面试重点包括各阶段职责、父子类初始化顺序、双亲委派原理及破坏场景等。该机制与JVM内存结构、字

2026-01-19 19:12:07 781 1

原创 JVM 字节码指令浅谈

Java字节码是JVM执行的二进制指令,由操作码和操作数组成,采用栈式执行引擎,所有运算基于操作数栈和局部变量表。核心指令包括:常量加载指令(ldc)、局部变量操作(iload/istore)、算术运算(iadd)、对象操作(new/dup/invokespecial)和方法调用指令(invoke系列)。其中new创建对象后必须配合dup指令使用,invokevirtual实现多态,invokestatic调用静态方法。字节码指令命名有固定规则:前缀表示数据类型(i=int,a=引用),后缀表示操作行为(l

2026-01-19 19:04:04 1061

原创 JDK8+ 字符串常量池

摘要:JDK不同版本中字符串常量池(StringTable)的内存位置有显著变化。JDK6位于永久代(PermGen),存储字符串实例;JDK7迁移至堆内存,改为存储引用;JDK8永久代被元空间取代,但StringTable仍保留在堆内存。StringTable本质是全局哈希表,JDK7+的intern()方法直接存储堆对象引用而非创建新对象。验证方法表明JDK8+字符串相关数据均在堆中,元空间仅存储类元数据。面试重点包括版本差异、内存分配机制及intern()方法的行为变化。(149字)

2026-01-19 17:21:47 566

原创 JVM Class中常量池 17 种 cp_info 表类型 浅谈

本文详细解析了JVM规范中定义的17种常量池表类型(cp_info),这些类型是Java类文件常量池的核心组成部分。主要内容包括:1)常量池本质是存储类运行所需的字面量和符号引用的复杂结构;2)17种常量类型按用途分为5大类:基础字面量、核心符号引用、复合引用、动态调用相关和扩展常量;3)重点讲解了8种高频核心类型(如UTF-8字符串、类引用、字段方法引用等)的结构和引用规则;4)总结了常量池的5条黄金规则,包括索引从1开始、多级引用链等关键特性;5)提供了通过javap工具查看实际常量池的方法。文章强调C

2026-01-19 16:35:06 932

原创 JVM 对象是否只能在堆中生成?【结论:❌】

Java对象并非只能在堆中分配,堆只是默认的主流分配区域。HotSpot虚拟机提供了多种非堆分配方式:1. 通过逃逸分析对未逃逸对象进行栈上分配或标量替换,将对象分配在虚拟机栈中;2. 通过NIO的DirectByteBuffer实现堆外内存分配;3. 字符串常量和Class元数据对象存储在元空间而非堆中。这些优化机制是JVM性能提升的关键手段,其中栈上分配和标量替换是默认开启的核心优化。只有发生逃逸的对象才会在堆中分配,通过TLAB机制优先在Eden区的线程本地缓冲区分配。最终结论:Java对象可以根据不

2026-01-19 16:31:26 585

原创 Java Class 文件完整格式详解

Java Class文件是JVM可执行的二进制字节码文件,采用8位字节流存储,无任何分隔符。其固定结构包括:4字节魔数(0xCAFEBABE)、4字节版本号、常量池(核心部分)、访问标志、类/父类/接口索引、字段表、方法表及属性表。关键特性包括:大端存储、顺序解析、无容错性。常量池存储类名、方法名等符号引用,方法表包含执行逻辑的字节码指令。可通过javap工具或十六进制编辑器查看Class文件内容。这种结构化设计实现了Java"一次编写,到处运行"的平台无关性。

2026-01-19 16:13:53 598

原创 Kubernetes(k8s)搭建指南

本文系统介绍Kubernetes从环境搭建到面试核心内容。搭建方面区分学习场景(推荐Minikube)和生产环境(推荐kubeadm),详细说明安装步骤和优化方案。面试考点涵盖五大模块:核心概念(Pod生命周期、控制器区别)、组件原理(架构、Pod创建流程)、运维命令、故障排查思路及Java微服务实战案例。重点掌握Pod异常状态分析、Service类型区别、滚动更新策略等高频问题,同时了解网络模型、存储方案等加分项。建议先实践部署再深入原理,强化故障排查能力。

2026-01-19 14:20:21 946

原创 ZGC 原理

ZGC是JDK11引入的革命性垃圾收集器,实现了亚毫秒级停顿(<1ms)、TB级堆内存支持和高吞吐量三大目标。其核心技术突破在于"颜色指针+读屏障"设计,将GC操作移至并发阶段,仅需两个极短STW阶段,且停顿时间不随堆大小增长。ZGC通过无记忆集设计、并发重定位等创新,解决了传统GC的内存碎片问题,特别适合金融交易、实时系统等低延迟场景。从JDK11到21持续优化,ZGC已成为Java应对大堆低延迟场景的首选方案,代表了GC技术的重大飞跃。

2026-01-19 10:58:10 565

原创 大文件上传 + 断点续传 (原理 + 前后端完整代码)

大文件上传与断点续传技术摘要 大文件上传的核心是分片技术,将大文件切割为固定大小分片(如5MB)分批上传,后端合并为完整文件。断点续传在此基础上通过文件MD5唯一标识和已上传分片记录实现,上传前查询缺失分片,仅上传未完成部分。该技术还能实现秒传功能,当检测到文件已存在时直接返回成功。实现要点包括前端使用Blob.slice进行分片、spark-md5计算文件标识,后端需要分片存储、合并逻辑及状态记录。关键优化包括并发上传、进度显示和分片校验,适用于网络中断、页面刷新等多种中断场景的续传需求。

2026-01-19 10:48:21 814

原创 CI/CD 流程

CI/CD是持续集成(CI)、持续交付(CD)和持续部署(CD)的自动化流程体系,属于DevOps核心能力。CI负责代码自动构建、测试和质量检测;CD将制品自动部署到测试/预发环境;持续部署实现生产环境全自动发布。标准流程包含8个步骤:代码提交→触发CI→环境准备→构建打包→质量检测→制品推送→环境部署→生产发布。主流工具包括GitLab/Jenkins/SonarQube/Harbor等。CI/CD优势在于提升效率、保证质量、环境一致和降低风险,最佳实践包括小步提交、自动化测试和灰度发布。落地难点在于测试

2026-01-15 19:13:31 1050

原创 缓存与数据库双写一致性

摘要:双写一致性是分布式系统中缓存与数据库数据同步的关键问题。核心矛盾在于操作顺序和并发竞争导致的数据不一致。生产环境推荐"先更新数据库再删除缓存"策略,配合延迟双删、分布式锁、版本号机制等方案。高并发场景可采用Canal监听binlog实现异步更新,并辅以定时任务兜底。最佳实践建议:低并发用延迟双删,高并发加分布式锁,大规模系统采用Canal异步方案,最终通过定时任务确保数据一致性。

2026-01-14 13:34:47 979

原创 Kafka 全面解析

Kafka是Apache开源的高性能分布式流处理平台,具备高吞吐、低延迟、高可用等核心特性。其架构基于生产者-消费者模型,通过分区机制实现并行处理,利用副本机制保证数据可靠性。关键优化包括:生产者批量发送、消息压缩;消费者合理配置拉取参数;Broker调整分区数和副本设置。面试重点包括消息可靠性保障(三端确认)、顺序性实现(Key哈希分区)、重复消费解决(手动提交+幂等)等。相比RocketMQ,Kafka更擅长大数据场景,而RocketMQ在事务消息等业务功能更丰富。

2026-01-14 13:16:27 755

原创 接口幂等性 全面解决方案

接口幂等性指同一请求多次执行结果一致,是分布式系统必备能力。核心场景包括订单创建、支付扣款等写操作,重复调用会导致数据异常。解决方案按优先级分为:前端/网关防重(拦截90%请求)、业务唯一标识校验(生产首选)、Token令牌机制(万能方案)、数据库唯一索引/乐观锁(终极兜底)。最佳实践需多层防护组合使用,特别注意校验的原子性和过期时间设置。金融等核心业务需采用业务幂等号+防重表+乐观锁等多重保障。幂等性设计要兼顾性能与可靠性,避免单一方案风险。

2026-01-14 13:11:52 853

原创 业务高并发场景 全链路处理方案

高并发场景处理是一套全链路分层防御体系,从前端到数据层需协同优化。核心思路包括:预防(拦截无效请求)、分流(负载均衡)、削峰(MQ缓冲)、扩容(水平扩展)和优化(提升单机性能)。前端通过节流防抖、CDN和降级减少请求;网关实现限流熔断和动态路由;应用层采用无状态设计、异步处理和本地缓存;数据层通过缓存策略、读写分离和分库分表突破瓶颈。最终需结合监控、压测和故障演练保障系统稳定性,形成完整的工程化解决方案。

2026-01-14 13:09:29 972

原创 Spring Cloud Alibaba 详解

SpringCloudAlibaba是阿里巴巴开源的微服务解决方案,兼容SpringCloud标准,是国内企业首选技术栈。它完美替代Netflix停更组件,提供Nacos(注册中心+配置中心)、Sentinel(熔断限流)和Seata(分布式事务)三大核心组件,具有一站式、高性能和本土化优势。企业使用时需注意版本强绑定问题,推荐SpringBoot2.3.9+SpringCloudHoxton.SR10+SCA2.2.6组合。核心技术栈还包括OpenFeign远程调用、Gateway网关等,能有效解决微服务

2026-01-14 11:47:49 1192

原创 JVM 全量垃圾回收器(GC)详解

JVM垃圾回收器核心知识点摘要: 分代模型:新生代(复制算法)和老年代(标记清除/整理算法)构成GC设计基础。 回收器分类: 按区域:新生代(Serial/ParNew/ParallelScavenge)、老年代(SerialOld/ParallelOld/CMS)、整堆(G1/ZGC) 按执行方式:串行(单线程STW)、并行(多线程STW)、并发(GC与应用线程并行) 核心指标:吞吐量(后台任务优先)与停顿时间(在线业务优先)的权衡。 企业选型: JDK8默认:ParallelScavenge+Paral

2026-01-14 11:26:34 609

原创 Seata 全解析(面试 + 实战版)—— 微服务分布式事务首选方案

Seata是阿里开源的分布式事务中间件,提供高性能、易集成的分布式事务解决方案。它支持AT、TCC、SAGA、XA四种事务模式,覆盖不同业务场景。核心架构包括TC(事务协调器)、TM(事务管理器)、RM(资源管理器)三大角色。AT模式最常用,基于"本地事务+日志补偿"实现最终一致性;TCC模式适合金融等高一致性场景;SAGA模式适用于长流程事务。Seata无缝集成SpringCloud等主流框架,通过@GlobalTransactional注解即可开启分布式事务。生产环境需部署TC集群并

2026-01-14 11:24:43 787

原创 微服务集成「分布式事务」

微服务分布式事务解决方案综述 微服务架构下,跨服务、跨数据库的业务操作导致本地事务失效,必须引入分布式事务。核心理论依据是CAP定理和BASE理论,实践中优先选择最终一致性方案。主流解决方案包括:1)本地消息表(轻量可靠);2)MQ事务消息(企业首选);3)TCC补偿事务(金融场景适用);4)2PC/XA(强一致但性能差);5)SAGA(长流程业务)。企业级集成推荐使用Seata(支持多种模式)或RocketMQ事务消息。选型原则是"能简不繁",并配套实现幂等性、防重试和重试机制。实际应

2026-01-14 10:56:26 861

中国电信2016年IT研发工程师笔试题及答案.pdf

中国电信2016年IT研发工程师笔试题及答案.pdf

2020-03-21

最新JAVA面试题总结之JavaWeb.docx

最新JAVA面试题总结之JavaWeb.docx

2020-03-21

最新JAVA面试题总结之基础.docx

最新JAVA面试题总结之基础.docx

2020-03-21

最新JAVA面试题总结之框架.docx

最新JAVA面试题总结之框架.docx

2020-03-21

最新JAVA面试题总结之数据库.docx

最新JAVA面试题总结之数据库.docx

2020-03-21

消息中间件面试专题及答案.pdf

消息中间件面试专题及答案.pdf

2020-03-21

阿里巴巴大规模流媒体的闪烁运行时改进.pdf

阿里巴巴大规模流媒体的闪烁运行时改进.pdf

2020-04-25

iOS面试题2019年度总结188题(下).pdf

iOS面试题2019年度总结188题(下).pdf

2020-04-25

iOS-面试宝典3.0.pdf

iOS-面试宝典3.0.pdf

2020-04-25

代码规范 .pdf

代码规范 .pdf

2020-04-25

性能优化PPT.pdf

性能优化PPT.pdf

2020-03-21

亿图图示 9.4.zip

亿图图示 9.4.zip

2020-04-29

JAVA 面试入坟系列(思维导图) By_萧曵丶.pdf

JAVA 面试入坟系列(思维导图) By_萧曵丶.pdfJ

2020-03-22

智联招聘2017 面试题.pdf

智联招聘2017 面试题.pdf

2020-03-21

Centos7重置密码.txt

Centos7重置密码.txt

2020-04-25

最新JAVA面试题总结之Redis.docx

最新JAVA面试题总结之Redis.docx

2020-03-21

优秀简历的编写思路.pdf

优秀简历的编写思路.pdf

2020-03-21

JAVA 面试入坟系列(0.0.1) By_萧曵丶.pdf

JAVA 面试入坟系列(0.0.1) By_萧曵丶.pdf

2020-04-13

小算法题总结.xmind

小算法题总结.xmind

2020-03-21

线程编程方面.doc

线程编程方面.doc

2020-03-21

利用VB和三菱FX_PLC开发小型自控系统.pdf

利用VB和三菱FX_PLC开发小型自控系统

2021-11-28

A700使用手册(应用篇)chnc.pdf

A700使用手册(应用篇)chnc.pdf

2021-11-28

FR-F500J使用手册(详细篇).pdf

FR-F500J使用手册(详细篇)

2021-11-28

cloud-source-demo

cloud-source-demo

2024-02-05

黑马Nacos jar包分析

黑马Nacos jar包分析 和 protoc-3.17.3-win64

2024-02-05

谷粒商城电商项目 ( 大型分布式基础+高级、高可用集群部署)(全栈开发篇)

谷粒商城电商项目 ( 大型分布式基础+高级、高可用集群部署)(全栈开发篇)

2020-05-22

第六期微服务架构-SpringCloudAlibaba代码和文档.zip

第六期微服务架构-SpringCloudAlibaba代码和文档.zip

2020-05-21

三菱PLC的QD75M系列-使用教程(20150410172124).pdf

三菱PLC的QD75M系列-使用教程(20150410172124)

2021-11-28

2021中国HR生存发展现状白皮书-三茅·2号人事部.pdf

2021中国HR生存发展现状白皮书-三茅·2号人事部.pdf

2021-07-21

麻省理工学院开放课程.算法导论课件

算法

2021-12-10

麻省理工学院公开课:微分方程课件.zip

麻省理工学院公开课:微分方程课件.zip

2021-12-10

MT500程序转换成MT8000.pdf

MT500程序转换成MT8000

2021-11-28

MR-JE-A技术资料集(Eng)sh030128c.pdf

MR-JE-A技术资料集(Eng)sh030128c

2021-11-28

三菱PLC的QD75M系列-使用教程.pdf

三菱PLC的QD75M系列-使用教程

2021-11-28

三菱QD75定位模块用户手册.pdf

三菱QD75定位模块用户手册

2021-11-28

基于三菱PLC的时序循环电路通用设计方法.pdf

基于三菱PLC的时序循环电路通用设计方法

2021-11-28

QD75定位模块教程.pdf

QD75定位模块教程

2021-11-28

电气自动化技术网提供.txt

电气自动化技术网提供

2021-11-28

MybatisCodeHelperNew-Pro.zip

IDEA Mybatis 插件 MybatisCodeHelperNew-Pro

2020-05-01

深度学习与TF-PPT和代.zip

深度学习与TensorFlow 2入门实战(完整版)

2020-05-23

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除