自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(94)
  • 资源 (1)
  • 收藏
  • 关注

原创 Mock技术文档

本文介绍了Mock技术在软件开发中的应用。Mock是一种测试技术,通过创建虚拟对象模拟真实对象行为,具有隔离性、可控性、快速性和稳定性等优势。文章详细阐述了Mock的核心概念、应用场景(包括单元测试、集成测试和开发阶段)以及在实际Spring Boot项目中的具体实现方式,如Mock第三方服务、数据库操作和大数据接口。同时对比了不同Mock框架的特点,并重点分析了Mock静态方法这一技术难点,提出使用PowerMock、Mockito 3.4+的MockedStatic或代码重构三种解决方案。

2025-11-14 10:40:35 683

原创 SQL注入攻击与防护攻略指南

SQL注入攻击与防护摘要 SQL注入是一种通过向Web应用输入参数插入恶意SQL代码来攻击数据库的常见漏洞。本文系统介绍了SQL注入的基本原理、攻击类型、检测方法和防御策略。内容包括:注入点识别技术(单引号测试、布尔测试等)、常见绕过过滤机制的方法(大小写混合、注释分割等)、盲注技术(布尔盲注、时间盲注),以及全面的防护措施(参数化查询、输入验证、最小权限原则等)。

2025-11-07 11:30:22 699

原创 Linux 服务器内存监控与优化指南

Linux 服务器内存监控与优化指南摘要: 本文详细介绍了Linux服务器内存管理的各种实用命令和方法。主要内容包括:1) 基础内存监控命令(free、top、htop等)及输出解读;2) 进程级内存分析工具(ps、pmap等);3) 系统级内存监控工具(vmstat、sar、atop等);4) 内存问题诊断方法;5) 优化方案:缓存清理、Swap配置、系统参数调优;

2025-11-06 10:34:50 976 1

原创 Nginx 域名监听配置小技巧

本文介绍了Nginx域名监听配置的核心内容。主要内容包括:1)Nginx配置文件结构,说明主配置文件和子配置目录的组织方式,以及通过include指令加载配置的机制;2)域名监听原理,详细解析Nginx如何通过listen和server_name指令实现域名匹配,包括匹配流程和不同匹配方式的优先级;3)实战配置示例,展示了在conf.d目录下配置基础域名、HTTPS证书和反向代理的具体实现方法,特别针对项目需求提供了反向代理配置模板。这些内容为Nginx服务器配置提供了实用的技术参考。

2025-10-30 14:56:14 392

原创 Arthas线上问题排查这篇文章就够啦

Arthas线上问题排查摘要 Arthas是阿里巴巴开源的Java诊断工具,提供类加载分析、方法监控、性能分析、热更新等核心功能,能快速定位线上问题而无需重启应用。相比传统工具,Arthas支持实时查看方法参数、动态修改代码、生成火焰图等。典型应用场景包括接口性能分析、类冲突排查、紧急热修复等。 安装方式灵活,可通过jar包或脚本快速启动,支持本地/远程连接和Web控制台。核心命令包括dashboard(实时监控)、watch(方法观测)、trace(调用链路追踪)等。

2025-10-09 15:45:13 1133

原创 提升算法能力就这样办

这篇文章摘要如下: 本文系统介绍了算法能力提升的学习路径和方法。首先阐述了算法能力对职业发展的重要性,包括面试必备、技术晋升、问题解决等方面。然后提出了12周的学习路线图,分为基础数据结构、基础算法、进阶数据结构和高级算法四个阶段。重点讲解了数组、链表、栈和队列等基础数据结构,并提供了Java实现的典型例题代码,如两数之和、反转链表、LRU缓存、有效括号等。文章还给出了不同水平层次的算法能力标准,建议求职者至少达到300题的中级水平。最后提供了详细的学习计划,帮助读者循序渐进地提升算法能力。

2025-10-09 14:34:52 612

原创 大模型微调之LoRA

文章摘要:LoRA技术详解与实践指南 LoRA(低秩适应)是一种高效的预训练模型微调方法,通过添加低秩矩阵(ΔW=BA)来调整模型,仅需训练0.1%-1%的参数。相比全参数微调,LoRA能降低60%-80%显存占用,提升25%-40%训练速度,同时保持模型效果。实践流程包括:环境准备(需PyTorch/Transformers等库)、数据预处理(构建统一提示格式)、模型加载(支持BF16/自动设备分配)等关键步骤。

2025-10-09 11:35:49 1158

原创 大模型调参详细介绍

大模型调参指南摘要 大模型调参是在预训练模型基础上针对特定任务进行参数优化的过程,主要解决领域适配、任务定制等问题。核心流程包括数据准备、环境搭建、模型选择、训练配置、评估部署等环节。

2025-10-09 10:51:00 829

原创 Nginx 技术详细讲解

Nginx技术概述 Nginx是一款高性能的HTTP和反向代理服务器,采用事件驱动的异步非阻塞架构,支持高并发连接处理。其核心技术包括Master-Worker多进程模型、反向代理负载均衡、静态文件高效服务等核心特性。Nginx通过epoll/kqueue实现高效IO处理,支持多种负载均衡算法(轮询、加权轮询、IP哈希等),并提供静态文件缓存压缩优化。在性能优化方面,需关注Worker进程配置、连接参数调优和缓存策略设置。

2025-09-30 10:48:39 819

原创 微服务网关技术详细介绍

本文全面介绍了微服务网关技术,包括核心功能、主流产品对比、核心流程实现及实际应用场景。主要内容涵盖:1)网关作为微服务统一入口,提供路由、负载均衡、认证授权等核心功能;2)Spring Cloud Gateway、Zuul、Kong和Nginx等主流网关产品的技术特点与适用场景对比;3)详细解析请求路由、负载均衡、限流熔断等核心流程的实现机制;4)实际部署配置案例和性能优化建议。文章为微服务架构中网关技术的选型和应用提供了系统性的技术参考。

2025-09-30 10:13:03 978

原创 微服务组件-Eureka 技术详解

Eureka 技术详解摘要: Eureka 是 Netflix 开源的微服务注册与发现组件,Spring Cloud 的核心模块之一。本文全面剖析了 Eureka 的核心技术,包括架构设计、核心流程和实际应用。文章首先介绍 Eureka 的基本概念、核心特性和版本演进,重点解析其服务注册发现机制、心跳维护和服务剔除流程。随后深入探讨了 Eureka 在微服务架构中的典型应用场景,包括负载均衡、服务治理等实践方案。

2025-09-29 14:26:10 741

原创 微服务-Nacos 技术详解

Nacos技术摘要 Nacos是阿里巴巴开源的服务发现与配置管理平台,支持动态服务注册发现、配置管理和服务治理。核心特性包括多协议服务注册、健康检查、元数据管理、动态配置更新和多环境支持。其架构分为Server端(包含注册、配置和核心模块)和Client SDK(包含服务发现、配置管理和负载均衡)。

2025-09-29 14:17:03 1206

原创 Dubbo 技术详细讲解

Dubbo 技术摘要 Apache Dubbo 是一款高性能 Java RPC 框架,提供分布式服务治理能力。核心特性包括基于 Netty 的高性能通信、多种负载均衡算法(轮询/随机/一致性哈希)、服务注册发现机制(支持 ZooKeeper/Nacos 等注册中心)、完善的容错策略(Failover/Failfast 等)。Dubbo 采用三层架构:接口层(服务契约)、核心层(远程调用/集群容错)、协议层(RPC/HTTP 等协议)。

2025-09-29 13:47:10 715

原创 Zookeeper 技术详细介绍

Zookeeper是一个开源的分布式协调服务,为分布式应用提供一致性服务。其核心特性包括数据一致性保证和树形结构的数据模型,支持持久节点、临时节点等多种节点类型。主要应用场景涵盖配置管理、服务注册发现、分布式锁和集群管理等。关键实现基于ZAB协议确保数据一致性,并采用Leader-Follower架构。重难点涉及脑裂问题、性能优化和故障处理。部署方式支持单机、集群和Docker,同时提供监控运维能力。Zookeeper在分布式系统中发挥着重要的协调作用,是构建可靠分布式系统的核心组件。

2025-09-29 11:20:13 894

原创 微服务架构师知识储备体系与学习路径

微服务架构师知识体系与学习路径摘要 本文系统介绍了微服务架构师的核心知识体系与学习路径,包含以下关键内容: 核心能力:技术决策、系统设计(高可用/可扩展)和团队协作能力 技术储备: 微服务基础理论(拆分原则、架构模式) 服务治理技术(负载均衡、熔断降级) API网关(认证授权、限流配置) 配置管理、服务通信等12个技术领域 实践路径: 分阶段学习路线规划 实战项目建议 持续学习资源推荐 全文提供了详细的技术实现示例(Java代码、配置示例)和架构设计方法论,适用于中高级开发者向架构师转型的系统学习。

2025-09-29 10:24:37 1197

原创 OAuth2 技术详解

OAuth2 技术详解 本文全面介绍了OAuth2授权协议的核心概念、工作流程和实现细节。主要内容包括: OAuth2的基本概念和四种授权模式(授权码、隐式、密码、客户端凭证) 五种架构流程图解析,包含整体架构和各授权模式流程 授权码模式的详细分析,包括请求参数、令牌交换和安全考量 安全实现的关键点,如授权码一次性使用、状态参数防CSRF攻击等 OAuth2通过标准化授权流程,实现用户信息的安全授权访问,避免了密码直接暴露给第三方应用的风险。文章通过流程图、代码示例和参数说明,深入浅出地讲解了这一重要协议。

2025-09-28 17:27:53 694

原创 Apache Shiro 技术详解

Apache Shiro 是一个功能强大的 Java 安全框架,提供认证、授权、加密和会话管理等核心功能。本文详细介绍了 Shiro 的整体架构、认证授权流程、CAS 单点登录流程以及核心类源码解析。通过清晰的流程图展示了 Shiro 的工作机制,包括认证成功后的 Principal 生成过程。文章还涵盖了与 Spring Boot 的集成和项目实战案例,帮助开发者快速掌握 Shiro 的核心特性和实际应用。

2025-09-28 16:37:27 1315

原创 程序员AI时代生存指南

本文为程序员提供AI时代的生存指南

2025-09-25 16:12:51 1077

原创 AI开发工具大比拼

本文对比了8款主流AI开发工具,包括Cursor、GitHub Copilot、Tabnine等,从功能特性、IDE集成度、性能等方面进行详细分析。Cursor作为专用AI编辑器提供最佳体验,GitHub Copilot生态最成熟,Tabnine注重隐私保护,Codeium完全免费。各工具在代码生成能力、项目理解深度上差异明显,开发者可根据需求选择:重AI协作选Cursor,需生态集成选Copilot,注重隐私选Tabnine,预算有限选Codeium。

2025-09-25 15:56:28 3883

原创 Cursor使用指南

cursor使用技巧

2025-09-25 15:43:59 966

原创 设计模式实战-设计模式组合使用

本文详细介绍了设计模式的组合使用方式,主要包括四种常见组合场景:1)单例+工厂模式用于资源管理;2)观察者+策略模式实现事件处理;3)装饰器+适配器模式完成接口兼容与功能增强;4)建造者+模板方法模式构建复杂对象。每种组合都提供了典型应用场景和Java实现示例,阐述了模式互补带来的优势。文章还分析了Spring框架源码中的模式组合应用实例,并总结了组合使用的核心原则:互补性、层次性、职责分离和可维护性,为设计复杂系统提供了实用指导。

2025-09-24 11:45:33 686

原创 设计模式-解释器模式详解

解释器模式是一种行为设计模式,用于定义语言的文法并解释执行表达式。其核心流程包括词法分析、语法分析构建抽象语法树(AST),以及递归解释执行。重点在于设计表达式接口(终结符/非终结符表达式)和实现递归下降解析器。难点包括处理复杂文法规则、性能优化和错误恢复。该模式适用于需要解释特定领域语言(DSL)的场景,如规则引擎、正则表达式等,但复杂文法可能导致类膨胀和执行效率问题。

2025-09-24 11:24:05 535

原创 设计模式-访问者模式详解

访问者模式是一种行为型设计模式,它通过双重分派机制将数据结构与数据操作分离。核心思想包括:通过Visitor接口定义操作,Element接口接受访问者,ObjectStructure管理元素集合。重点在于双重分派机制(元素调用访问者方法,访问者再处理具体元素)和对象结构管理。难点包括类型安全、开闭原则的平衡(新增操作容易但扩展元素类型需修改所有访问者)以及性能优化考虑。典型应用场景如编译器语法树处理、文档格式转换等,适合数据结构稳定但操作频繁变化的场景。

2025-09-24 11:12:50 389

原创 设计模式-备忘录模式详解

本文总结了备忘录设计模式(Memento Pattern)的核心概念与应用。备忘录模式是一种行为型设计模式,允许在不破坏封装性的前提下捕获对象内部状态并进行状态恢复。文章详细介绍了模式结构(Originator、Memento、Caretaker三要素)、核心流程(状态保存与恢复流程)、代码实现示例,并重点分析了封装性保护、状态管理策略等关键点。同时探讨了内存管理、深拷贝/浅拷贝、并发安全等实现难点,并通过Spring事务回滚机制展示了备忘录模式在框架中的实际应用。

2025-09-24 10:49:19 447

原创 设计模式-状态模式详解

状态模式是一种行为型设计模式,允许对象在内部状态改变时改变其行为,使对象看起来修改了其类。它通过将状态封装为独立类,并将行为委托给当前状态对象来实现。核心结构包括环境类(Context)、抽象状态类(State)和具体状态类(ConcreteState)。状态模式能消除大量条件判断,使状态转换更清晰。典型应用包括订单状态管理、工作流引擎等场景。在实现时需注意状态转换的复杂性管理,可通过状态转换表优化。Spring框架中的状态机实现(StateMachine)是典型应用案例。

2025-09-23 18:08:11 1119

原创 设计模式-中介者模式详解

中介者模式是一种行为型设计模式,通过中介者对象封装多个对象间的交互,降低对象间的直接耦合。核心结构包括抽象中介者、具体中介者、抽象同事类和具体同事类。中介者集中处理同事对象间的通信,简化交互逻辑。在Java中,可实现注册、消息转发等功能。该模式适用于对象间交互复杂但关系明确的场景,如聊天室、GUI组件交互等。Spring框架中的ApplicationEventMulticaster也体现了中介者思想。面试中常考察其优缺点与应用场景,需注意避免中介者过度复杂化。

2025-09-23 17:43:55 956

原创 设计模式-迭代器模式详解

迭代器模式是一种行为型设计模式,用于顺序访问聚合对象元素而不暴露其内部结构。该模式通过分离遍历逻辑(Iterator接口)与聚合对象(Aggregate接口)实现松耦合,支持多种遍历方式。核心实现包括:定义迭代器接口(hasNext、next等方法)、创建具体聚合类(如ArrayList)及其对应的迭代器实现。重难点在于线程安全,可通过同步锁机制解决。该模式在集合框架中广泛应用,如Java的Collection接口和Spring的CompositeIterator。

2025-09-23 17:14:58 920

原创 设计模式-责任链模式详解

责任链模式是一种行为型设计模式,它通过将多个处理对象连接成链,使请求能够沿着这条链传递,直到被某个对象处理。核心思想是解耦请求发送者和接收者,支持动态配置处理流程。模式包含抽象处理者、具体处理者和客户端三个角色,通过链式调用实现请求处理。Spring框架中的拦截器、过滤器等机制都采用了责任链模式。其优势在于灵活性和可扩展性,但需要注意处理链的管理和性能优化。典型应用场景包括审批流程、日志处理和权限验证等系统。

2025-09-23 13:56:40 1209

原创 设计模式-原型模式详解

原型模式是一种创建型设计模式,通过复制现有对象来创建新实例,避免重复创建相似对象的开销。其核心流程包括:定义抽象原型接口、实现具体原型类(需区分浅克隆与深克隆)、客户端调用克隆方法创建新对象。重难点在于正确处理对象引用关系的复制,特别是深克隆的实现方式,可通过重写clone方法、复制构造函数或序列化技术实现。该模式在Spring框架的Bean创建、对象池等场景中广泛应用,能有效提升性能和简化复杂对象的创建过程。

2025-09-23 11:44:34 859

原创 设计模式-建造者模式详解

本文详细介绍了建造者模式的设计与实现。建造者模式是一种创建型设计模式,通过分离复杂对象的构建过程与表示,使得同样的构建过程可以创建不同的表示。文章从模式定义、核心思想、结构组成展开,重点讲解了实现流程:1)定义产品类;2)创建抽象建造者接口;3)实现具体建造者;4)定义指挥者控制构建过程;5)客户端调用示例。内容涵盖流程图解、代码实现、关键角色职责,最后通过电脑配置的实例演示了如何应用该模式灵活构建不同配置的产品。

2025-09-23 11:32:09 1529

原创 设计模式-享元模式详解

享元模式是一种结构型设计模式,通过共享相同内在状态来减少内存使用。其核心思想是分离内在状态(共享)与外在状态(客户端维护),通过享元工厂管理共享对象。实现步骤包括:定义抽象享元类、实现具体享元类、创建享元工厂进行对象管理。该模式适用于大量相似对象的场景,如字符渲染、游戏开发等,能显著降低内存消耗。关键难点在于正确识别和分离内外状态,确保共享部分不变而可变部分由客户端处理。在Spring等框架中常用于资源池化管理。

2025-09-23 11:20:25 1118

原创 设计模式-组合模式详解

组合模式是一种结构型设计模式,用于表示"部分-整体"的层次结构。核心思想是通过统一接口处理单个对象和组合对象,使客户端代码一致。模式包含抽象构件(Component)、叶子构件(Leaf)和组合构件(Composite)三部分。实现时需考虑透明式(统一接口)与安全式(分离接口)两种方式,优先推荐透明式。在深层嵌套结构中,可通过迭代代替递归优化性能。Spring框架中的Bean组合、文件系统等都是典型应用场景。面试常考模式结构、透明性与安全性比较、实际应用等问题。

2025-09-23 11:03:17 1045

原创 设计模式-桥接模式详解

桥接模式是一种结构型设计模式,它将抽象与实现分离,使两者可以独立变化。核心思想是通过组合而非继承来建立类间关系,包含抽象类、扩充抽象类、实现接口和具体实现类四个角色。该模式特别适用于多维度变化的系统,避免类爆炸问题,如消息处理中消息类型和发送方式的组合。Spring框架中的JDBC抽象层是桥接模式的典型应用,DataSource作为抽象与DriverManager实现解耦。面试中常考察桥接与适配器模式的区别,以及如何在多维度扩展场景下应用桥接模式。

2025-09-19 11:49:20 991

原创 设计模式- 命令模式详解

命令模式是一种将请求封装为对象的行为型设计模式,其核心在于解耦调用者和接收者,支持请求排队、日志记录及撤销操作。文章详细介绍了命令模式的结构(命令接口、具体命令、调用者、接收者、客户端)和实现流程,包括定义命令接口、创建接收者、实现具体命令、定义调用者及客户端使用。重点分析了命令撤销/重做功能的状态管理和历史记录实现,以及宏命令的组合方式。文中还提供了Spring框架中的命令模式应用示例和常见面试问题,如模式优缺点、适用场景等,帮助读者全面理解命令模式的设计思想与实践应用。

2025-09-19 11:26:36 995

原创 设计模式-观察者模式详解

本文系统介绍了观察者模式的设计原理与实现方法。首先定义了观察者模式的基本概念,它是一种一对多的依赖关系,允许主题对象状态变化时自动通知所有观察者。文章详细阐述了模式结构,包括主题、具体主题、观察者和具体观察者四个核心角色,并通过代码示例展示了完整的实现流程。重点分析了观察者模式中的三个关键问题:内存泄漏的预防方案、线程安全的实现方式以及观察者执行顺序的控制策略,分别给出了具体的解决方案和优化代码。全文通过流程图和代码示例,清晰呈现了观察者模式的核心思想和技术实现细节。

2025-09-19 10:47:19 598

原创 设计模式详解:单例模式、工厂方法模式、抽象工厂模式

本文详解三种常见设计模式:单例模式确保一个类仅有一个实例,提供全局访问点,实现方式包括饿汉式、懒汉式、双重检查锁定、静态内部类和枚举,重点解决线程安全、序列化和反射攻击问题;工厂方法模式定义创建对象的接口,让子类决定实例化哪个类;抽象工厂模式创建相关或依赖对象家族,无需指定具体类。文章对比了三种模式的适用场景,并总结了面试高频考点,如单例模式的线程安全实现、Spring中的单例应用等。

2025-09-19 09:59:51 1338

原创 设计模式-外观模式详解

外观模式是一种结构型设计模式,为复杂子系统提供统一的高层接口,简化客户端调用。核心思想是通过Facade类封装多个子系统接口,降低系统耦合度。适用场景包括:简化复杂系统接口、解耦客户端与子系统、分层构建系统等。模式结构包含Facade外观类、SubSystem子系统和Client客户端三类角色。外观模式可分为基本实现和抽象实现两种形式,前者直接封装子系统,后者通过抽象类提供扩展性。设计流程包括识别复杂子系统、设计外观接口、实现外观类和客户端调用四个步骤。

2025-09-18 17:25:54 1023

原创 设计模式-模板方法模式详解(2)

本文摘要: 模板方法模式是一种行为型设计模式,通过定义算法骨架并将可变步骤延迟到子类实现,实现代码复用和扩展性。核心结构包括抽象类(定义模板方法和抽象方法)、具体类(实现抽象方法)以及可选的钩子方法。该模式适用于多个类有相同算法结构但实现不同的场景,能有效控制子类扩展范围。文中详细介绍了模式定义、核心思想、适用场景、类图结构、分类(基本型和带钩子型)以及设计流程,包括识别算法结构、提取抽象类和实现具体类三步骤,并提供了Java代码示例说明典型实现方式。

2025-09-18 15:46:02 1103

原创 设计模式-代理模式详解

代理模式摘要 代理模式是一种结构型设计模式,通过代理对象控制对目标对象的访问,在不修改目标对象的情况下增强其功能。分为静态代理和动态代理两种实现方式: 静态代理:手动创建实现相同接口的代理类,在方法调用前后添加额外处理逻辑 动态代理: JDK动态代理:基于接口,通过Proxy类和InvocationHandler接口实现 CGLIB动态代理:基于继承,适用于无接口的类 核心应用场景包括远程调用、性能监控、权限控制等。静态代理实现简单但灵活性差,动态代理更灵活但性能略低。

2025-09-18 11:54:10 1212

原创 设计模式-装饰器模式详解

装饰器模式是一种结构型设计模式,允许在不改变对象结构的情况下动态扩展功能。其核心是通过创建包装对象来添加职责,遵循"组合优于继承"原则。该模式包含抽象组件、具体组件、抽象装饰器和具体装饰器四个角色,典型应用包括Java I/O流处理、缓存功能增强等场景。装饰器模式支持运行时功能扩展,避免了继承带来的类爆炸问题,同时保持了对象接口的一致性。示例展示了如何通过装饰器为数据源添加加密和压缩功能,以及为服务接口增加缓存能力。

2025-09-14 12:23:42 834

sql优化.md

mysql执行过程和日志介绍,可以详细的了解MySQL的执行过程和mysql怎么写日志的

2019-09-01

空空如也

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

TA关注的人

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