自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

萧曳丶

多品味

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

原创 HotSpot JVM 运行结构 图解

JVM 结构

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

原创 Nginx进程模型详解

Nginx高性能的核心在于其多进程+IO多路复用架构设计。Master进程负责管理协调,Worker进程处理请求,二者分工明确,通过共享内存和信号通信。Worker进程采用单线程+IO多路复用模型,单个进程可高效处理上万并发连接。Nginx通过多进程架构实现多核高效利用,无锁竞争减少性能开销;借助epoll等IO多路复用技术避免资源浪费;并通过优化解决了惊群效应问题。生产环境配置建议Worker进程数与CPU核心数一致,绑定CPU核心,合理设置连接数。这种设计使Nginx兼具高并发、高可用、低开销和易运维等

2026-04-06 16:26:46 299

原创 LangChain Model IO 提示词模版(Python版)

LangChain ModelIO模块是控制大模型输入输出的核心工具,包含提示词模板、模型调用和输出解析三大功能。文章详细介绍了四种企业级提示词模板:基础字符串模板(PromptTemplate)、最常用的对话模板(ChatPromptTemplate)、提升准确率的少样本模板(FewShotPromptTemplate)以及后端必备的结构化输出模板。特别强调了RAG专用提示词模板的用法,以及通过链式调用(prompt→llm→parser)实现一键生成提示词、调用模型和解析结果的高效工作流。最佳实践建议优

2026-03-13 13:49:15 373

原创 LangChain Model IO 提示词模版(JAVA版)

LangChain4j的ModelIO模块为Java开发者提供了高效的提示词管理方案。核心包含四种模板:基础字符串模板用于简单替换;对话模板(最常用)支持系统/用户角色设定;少样本模板通过示例提升复杂任务准确率;结构化模板强制JSON输出便于后端解析。开发者可通过Maven快速集成,模板支持动态参数、角色设定和标准化输出,有效替代字符串拼接,统一团队规范。最佳实践建议优先使用ChatPromptTemplate,结合RAG知识库和少样本优化,将提示词配置化管理。该模块大幅简化Java与大模型的交互流程,是构

2026-03-13 13:18:31 386

原创 Python 协程

协程是一种轻量级并发编程技术,通过单线程实现函数暂停/恢复来提升I/O密集型任务性能。其核心优势包括:高并发(单线程可运行上万协程)、极轻量(每个协程仅需几KB内存)、无锁竞争和快速切换(比线程快100倍)。Python通过async/await语法实现协程编程,使用asyncio库进行调度。典型应用场景包括网络请求、文件读写等I/O操作,相比同步和多线程方案,协程能以更少资源实现更高并发。使用时需注意:协程函数必须用async定义,异步操作需用await等待,避免混用同步阻塞操作。

2026-03-12 13:52:48 362

原创 Python 生成器(Generator)

生成器是一种惰性计算的迭代器,可以一边循环一边生成数据,无需一次性创建所有数据。它通过yield关键字实现暂停执行和恢复功能,具有节省内存的优势,特别适合处理大数据、无限序列和大文件。生成器有两种创建方式:生成器表达式(用()代替[])和生成器函数(包含yield)。使用时可通过next()、for循环或转为列表获取数据。与列表相比,生成器内存占用极小但只能迭代一次。高级用法包括send()传值和无限序列生成。生成器是大数据处理的首选工具,其核心特点是"按需生成,用完即弃"。

2026-03-08 17:38:19 210

原创 Python 装饰器

摘要:装饰器是Python中基于闭包的核心应用,用于在不修改原函数代码的情况下扩展功能(如日志、计时、权限等)。其本质是一个接收函数并返回新函数的闭包,通过@语法糖调用。关键点包括:处理带参数/返回值的函数时需使用*args和**kwargs;常用装饰器类型(计时、日志、权限校验);支持带参数的装饰器需多层嵌套;多个装饰器按从下到上装饰、从上到下执行顺序;必须用@functools.wraps保留原函数元信息。装饰器遵循开闭原则,能显著提升代码复用性。

2026-03-06 15:35:48 212

原创 Python 闭包

闭包是Python中一种特殊的函数结构,由嵌套函数、引用外部变量和返回内部函数三个要素构成。它能让内部函数访问并保留外部函数的作用域变量,即使外部函数已执行结束。闭包的核心功能是保存函数状态,常用于计数器、装饰器、工厂函数等场景。使用时需注意:修改外部变量需声明nonlocal,循环中创建闭包需用默认参数立即绑定变量。通过__closure__属性可判断函数是否为闭包。相比类,闭包更适合轻量级的状态保存,但复杂功能仍需使用类。

2026-03-06 00:21:11 336

原创 Python 推导式

Python推导式是一种高效简洁的语法结构,用于快速生成列表、字典和集合。主要分为三种形式:列表推导式[]、字典推导式{}和集合推导式{},核心公式为[表达式 for 变量 in 可迭代对象 if 条件]。列表推导式最常用,可进行简单生成、数值计算、条件过滤和if-else判断;字典推导式用于键值对转换;集合推导式自动去重。推导式相比传统循环具有代码简洁、执行高效等优势,是Python编程中的常用技巧。初学者应掌握基础生成、带过滤和带判断三种经典模板。

2026-03-06 00:16:00 42

原创 Python 作用域(Scope)

Python作用域遵循LEGB规则:查找变量时按局部(Local)→嵌套(Enclosing)→全局(Global)→内置(Built-in)顺序。局部变量只能在函数内访问;修改全局变量需用global声明,修改嵌套外层变量需用nonlocal声明。常见错误包括:函数内直接赋值会创建新局部变量而非修改外部变量,嵌套函数修改外层变量必须使用nonlocal。关键点:变量查找从内到外,修改外部变量需显式声明,避免意外创建新变量。

2026-03-06 00:00:26 219

原创 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 638

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

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

2026-02-05 17:28:55 670

原创 Docker 面试题

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

2026-02-05 14:30:03 979 1

原创 BeanFactory 和 FactoryBean区别

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

2026-02-05 11:04:32 659

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

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

2026-02-04 17:10:43 441

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

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

2026-02-04 10:42:59 541

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

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

2026-02-04 10:30:25 462

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

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

2026-02-04 10:25:40 283

原创 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 687

原创 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 108

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

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

2026-02-04 10:05:26 112

原创 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 584

原创 Java 中单例对象写法

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

2026-02-03 11:27:53 633

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

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

2026-02-03 10:27:35 564

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

本文系统梳理了前端项目中的核心配置文件体系。首先区分了静态配置(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 1066

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

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

2026-01-28 17:20:25 636

原创 CSS3 业务开发高频样式

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

2026-01-28 10:56:21 1150

原创 JavaScript 闭包和高级用法

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

2026-01-28 10:14:30 872

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

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

2026-01-28 10:06:39 650

原创 Java SPI 核心知识点梳理

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

2026-01-20 19:46:25 884

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

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

2026-01-20 19:44:32 831

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

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

2026-01-19 19:12:07 799 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 1105

原创 JDK8+ 字符串常量池

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

2026-01-19 17:21:47 582

原创 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 945

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

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

2026-01-19 16:31:26 590

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

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

2026-01-19 16:13:53 647

原创 Kubernetes(k8s)搭建指南

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

2026-01-19 14:20:21 1127

原创 ZGC 原理

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

2026-01-19 10:58:10 596

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

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

2026-01-19 10:48:21 918

中国电信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关注的人

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