自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(116)
  • 收藏
  • 关注

原创 从云原生到 AI 原生:运行时架构演进、Serverless 核心支撑与降本路径探索

【摘要】AI原生时代正在重塑信息技术架构,推动计算范式从确定性代码向自主智能体(Agent)演进。云原生时代的容器编排和无服务器计算已无法满足AI应用对状态管理、异构算力和极致弹性的需求。AI原生运行时需具备三大核心能力:1)面向会话的状态管理与安全隔离;2)大规模实时弹性与精益成本管理;3)异构算力与标准化工具连接。Serverless模型运行时通过GPU虚拟化、负载感知调度等技术创新,实现模型服务的高效部署。同时,智能体运行时采用"会话式"架构,将状态管理与计算资源解耦,支持长周期、

2025-10-17 09:00:00 963

原创 AI 工具生态的标准化演进:从 Function Calling 痛点到 MCP 协议构建与治理探索

大模型虽然越来越聪明,但是缺少工具向物理世界进行延伸,它对物理世界既不可读也不可写。因此,业界才通过工具调用(Function Calling)、检索增强(RAG)、以及具备计划与执行能力的代理式工作流(Workflow)来弥补模型与现实世界之间的鸿沟,把智能从会说推进到能做。

2025-10-16 13:00:00 1340

原创 上下文工程:从提示词局限到 AI 原生应用的动态认知环境构建(含 RAG 技术与记忆系统)

摘要: 大型语言模型(LLM)的应用正从单轮问答转向复杂任务执行,提示词工程因其静态、无状态的局限性难以满足需求,上下文工程(Context Engineering)应运而生。它通过动态构建认知环境(如检索增强生成RAG、记忆系统、工具扩展等)解决LLM的知识时效性、长上下文遗忘等问题。RAG技术通过索引-检索-生成三阶段工作流整合外部知识,但面临分块优化、多模态处理等挑战。未来,Agentic RAG、多模态RAG与知识图谱融合将推动RAG向主动推理升级。智能体的多级记忆系统(短期/长期记忆)和运行时策略

2025-10-15 07:15:00 1573

原创 AI 原生应用框架:智能体、通信协议、消息驱动与协同开发体系解析

摘要:本文探讨了生成式AI技术驱动下AI原生应用框架的构建。首先分析了从单智能体到多智能体系统的开发范式演进,指出分布式架构的必要性,并介绍了A2A协议实现异构智能体通信。其次阐述了基于Nacos的智能体注册中心管理和RocketMQ轻量化消息模型提升通信效率。最后提出基于统一元数据的AI协同开发模式,通过标准化交付物实现从需求到代码的高效流转。文章系统性呈现了涵盖"执行单元-通信机制-资源调度-开发协同"的完整AI原生应用框架,为应对AI时代的架构设计挑战提供了实践方向。

2025-10-14 06:00:00 1912

原创 掌握 AI 原生应用命脉:大模型、Agent、RAG 等 11 个关键因素的系统解读

摘要:AI原生应用是以大模型为智能中枢、Agent为行为载体的新一代应用形态,深度融合记忆、工具、检索等能力,实现自主理解、决策与行动。本文系统解析了11个关键因素:大模型作为认知基础(包括通用、垂直和专属模型的选择策略);Agent框架与设计模式(如CoT、ReAct等思维模式);RAG技术实现知识增强;记忆机制确保交互连贯性;工具调用扩展能力边界;以及网关、运行时、可观测、评估和安全等技术保障体系。这些要素协同构建了AI原生应用的技术架构,推动智能应用从概念验证走向规模化落地。

2025-10-13 07:00:00 1504

原创 AI原生应用架构演进与挑战

本文探讨了AI原生应用架构的发展历程与成熟度评估体系。文章梳理了从单体架构到云原生架构的技术演进,指出AI原生应用以大模型为核心,具备自然语言交互、多模态处理、动态推理等核心能力。研究显示,当前国内AI原生应用以单Agent架构为主(62%),面临长会话管理、算力调度等挑战。文章提出AI原生应用架构成熟度四个等级:概念验证级、早期试用级、成熟应用级和完全成熟级,并构建了包含自然语言交互、多模态理解等五大维度的评估体系。该研究为AI应用的规划开发和优化提供了系统化的诊断工具和建设指南。

2025-10-12 07:00:00 1834

原创 依托 <AI 原生应用架构白皮书>,看 AI 原生应用的发展与实践

《AI原生应用架构白皮书》系统阐述了AI应用全生命周期管理,指出云智一体时代下软件开发正向"生成式"范式转变。白皮书揭示了企业AI转型面临的核心矛盾:业务期望与IT能力间的差距,以及幻觉、延迟等系统性挑战。提出构建数据飞轮、采用AgenticAI等技术路径,强调通过"云智一体"全栈能力解决稳定性、安全等关键问题,为开发者提供从架构设计到运维优化的系统化框架。随着模型成本大幅降低,AI应用正进入规模化爆发阶段。

2025-10-11 22:00:00 290

原创 深入解析Java NIO:从BIO到Reactor模式的网络编程演进

本文系统介绍了Java网络编程中的Socket、NIO及相关技术。Socket是应用层与TCP/IP协议族的中间层,通过IP地址和端口号建立通信链路。文章比较了BIO(同步阻塞)和NIO(同步非阻塞)模型,详细讲解了NIO三大核心组件:Selector、Channel和Buffer的工作原理。针对高并发场景,提出了Reactor模式及其多线程优化方案,包括单线程、工作者线程池和主从多线程三种实现方式。最后讨论了RPC框架的设计要点,分析了其与HTTP协议的关系,并指出实现RPC需要考虑代理、序列化和服务实例

2025-10-11 14:00:00 902

原创 JoyAgent 深入工具调用链

在前两篇关于JoyAgent Genie Backend代理系统的分析中,我们深入探讨了多代理架构的设计理念和协作机制。然而,真正赋予这些智能代理"能力"的,是其背后精心设计的工具系统。工具系统就像是AI代理的"瑞士军刀",让抽象的推理能力转化为解决实际问题的具体行动。

2025-10-11 08:00:00 846

原创 京东 JoyAgent 有多强?ReAct+Plan-Executor 双模式拆解,搞定多智能体落地最后一公里

JoyAgent-JDGenie是京东开源的轻量化多智能体框架,采用SSE流式响应实现实时交互。其核心代理协作机制包括:1)BaseAgent提供统一执行骨架;2)ReAct模式通过"思考-行动-观察"循环反馈驱动任务;3)Plan-Executor模式先拆解目标再执行;4)异步线程池处理工具调用。框架支持策略模式的分发机制和动态提示词注入,具有较好的扩展性。当前存在提示词管理不够灵活等问题,但整体设计清晰,为快速构建多智能体产品提供了技术基础。

2025-10-10 18:45:00 1165

原创 JoyAgent-JDGenie 多智能体框架:源码分析开篇与整体概览

JoyAgent-JDGenie是一个开箱即用的多智能体框架,支持二次开发。其核心创新包括:1)多层级多模式思考机制,结合Plan-Executor和ReAct模式;2)跨任务工作流记忆;3)原子工具自动拆解重组能力。系统采用Spring Boot+Java技术栈,通过SSE实现实时通信,包含规划代理、执行代理、工具系统等核心模块,支持RL优化和全链路流式输出。预置的提示词体系规范了任务拆解和执行流程,确保任务逻辑连贯、不重复。该框架特别擅长处理需要多工具协作的复杂任务,在保证效率的同时提高任务完成质量。

2025-10-10 14:27:56 1237

原创 AI 原生时代应用智能化全景解读:从核心特征、关键技术(RAG/A2A)到渐进式实践

应用智能化正推动产业从功能自动化向认知智能化的深度变革,但企业面临技术链断裂、场景选择难和产业协同低效三大挑战。文章系统拆解了应用智能化体系,包括AI原生应用架构(数据层、模型层、工具层、Agent层、Client层)、六大核心特征(多模交互、智能协作等)和关键技术(多模态大模型、A2A协议等)。提出L1-L5成熟度模型和三阶段实施路径(锚定高价值场景-注入智能能力-持续优化),并强调需平衡战略对齐、用户体验、组织适配、合规伦理等关键因素。通过渐进式演进,企业可构建可持续的智能应用体系,实现数字化转型。

2025-09-29 16:04:21 819

原创 Spring注解演进与自动装配原理深度解析:从历史发展到自定义Starter实践

在SpringBoot的自动装配中其实有使用到SPI机制SPI,全称为 Service Provider Interface,是一种服务发现机制。它通过在ClassPath路径下的META-INF/services文件夹查找文件,自动加载文件里所定义的类。这一机制为很多框架扩展提供了可能,比如在Dubbo、JDBC中都使用到了SPI机制。我们先通过一个很简单的例子来看下它是怎么用的。流程:A项目中仅声明个接口;在拓展的实现,导入A项目的依赖,创建接口的实现类。

2025-08-30 21:29:30 1079

原创 Spring Boot 自动配置原理深度解析:从启动流程到监听机制

通过源码分析揭示了SpringBoot自动装配和启动过程中的关键设计,包括延迟导入、事件驱动等机制,为理解SpringBoot内部原理提供了深入视角。

2025-08-30 21:18:19 711

原创 基于Spring Cloud Gateway构建API网关

API网关是微服务架构中的统一入口,解决客户端直接调用多个微服务的复杂性。Spring Cloud Gateway作为新一代网关,基于WebFlux和Netty架构,提供路由转发、认证鉴权、限流监控等功能。其工作原理通过路由(Route)、断言(Predicate)和过滤器(Filter)三个核心组件实现:请求先匹配路由规则,再通过过滤器链处理(pre/post过滤器)。文中详细介绍了断言类型(如Path、Header等)、过滤器分类(32种单一过滤器和9种全局过滤器)及自定义过滤器实现方法。最

2025-08-29 00:04:07 945

原创 Spring事务管理机制深度解析:从JDBC基础到Spring高级实现

本文系统性地剖析了Java事务管理的完整技术栈,从基础的JDBC事务控制到Spring框架的高级事务管理机制。

2025-08-28 23:57:19 948

原创 Java并发编程深度解析:从互斥锁到StampedLock的高性能锁优化之路

摘要: 本文深入探讨了多线程并发访问临界资源时的线程安全问题及解决方案,重点对比了互斥锁、读写锁(ReentrantReadWriteLock)和StampedLock的性能差异与实现机制。互斥锁适用于写操作频繁场景,而读写锁在读多写少时性能更优。StampedLock通过引入乐观读锁(无锁验证机制)和版本戳(state分三部分管理),显著提升了读密集型场景的性能。文章详细分析了StampedLock的核心属性(自旋策略、state结构)、数据结构(WNode队列)及源码实现(如tryOptimisticR

2025-08-26 22:49:58 846

原创 Redis核心机制解析:数据结构、线程模型与内存管理策略

本文详细介绍了Redis的数据结构、内部编码、线程模型、淘汰算法及内存管理机制。主要内容包括:1. Redis采用多数据结构与内部编码实现,通过动态调整编码优化性能;2. Redis6.0引入多线程IO模型提升性能,但仍保持核心单线程处理;3. 详细解析LRU和LFU淘汰算法原理及实现方式;4. 过期策略采用定时扫描与惰性删除结合;5. lazyfree机制通过后台线程异步处理大键删除,避免阻塞主线程。文章深入剖析了Redis的核心设计思想与优化策略,对理解Redis高性能原理和内存管理具有重要参考价值。

2025-08-26 21:37:15 1516

原创 微服务架构及常见微服务技术栈

本文介绍了微服务架构的基本概念、技术栈和核心思想,指出其具有灵活性、可扩展性、独立部署等优势,但也面临分布式复杂性、运维难度等挑战。文章详细列举了微服务常见的组件及其功能,如服务注册发现、负载均衡、API网关等。通过作者带领学生团队开展项目的实际经历,对比分析了微服务与单体架构在团队协作、敏捷开发等方面的差异,强调了微服务架构在解决团队自治问题上的优势。最后,文章总结了微服务架构在提升系统容错性和可维护性方面的价值,同时也指出了其带来的人力、金钱成本增加等问题。

2025-08-05 22:15:59 881

原创 Dify平台RAG实战:分段策略、模型协同与知识库优化指南

摘要:RAG(检索增强生成)系统通过结合大型语言模型与外部知识库解决LLM的幻觉问题,其核心流程包括检索、重排序和生成。关键组件包括Embedding模型(文本向量化)、Reranker模型(文档重排序)和LLM。Dify作为开源LLM开发平台,支持多种分段策略(通用分块、QA分块、父子策略)以适应不同场景。文本长度影响向量表示质量,分段策略需平衡语义连贯性与计算效率。RAG系统依赖数据质量与结构化程度,非结构化数据会导致检索噪声。优化方向包括知识库聚焦、数据标注时效管理和更新机制设计。

2025-08-04 17:04:44 1239 1

原创 Spring源码解析——启动 初始化

摘要:本文深入分析了Spring框架中ApplicationContext的核心实现原理。首先阐明了ApplicationContext作为应用上下文,在BeanFactory基础上扩展了事件发布、资源加载等功能。然后详细解析了BeanDefinition的注册过程,包括XML和注解两种配置方式的处理机制。重点剖析了refresh()方法的执行流程,涵盖BeanFactory准备、后置处理器调用、事件监听器注册等关键步骤。最后介绍了国际化、事件广播等辅助功能的初始化过程。通过源码分析,揭示了Spring容器

2025-06-13 14:39:05 1072

原创 Caffeine+Redis二级缓存架构设计实战

本文介绍了Caffeine缓存库的基础使用及其与Redis结合的二级缓存架构设计。首先阐述了Caffeine的特点,包括自动数据加载、多种内存淘汰策略、异步清理机制等,并通过示例展示了Cache、LoadingCache和AsyncLoadingCache的使用方式。其次,详细讲解了Caffeine+Redis二级缓存架构的实现方案,包括手动配置、Spring注解方式以及自定义注解实现,重点分析了二级缓存的优缺点和数据一致性问题。最后针对分布式环境下的一级缓存一致性问题,提出了基于Redis发布/订阅的解决

2025-06-03 14:39:13 780

原创 幂等的几种解决方案以及实践

通过定义注解实现哦!/*** 业务名称*//*** key设置*//*** 在多长时间内一直保持幂等,如果不配置则以执行方法为准*//*** 当消息执行已经出发防重复执行的限制时,提示信息*/String message() default "提交频繁,请稍后重试";

2025-05-08 16:00:35 1346 1

原创 深入浅出理解常见的分布式ID解决方案

在构建时,如果通过lua执行加载获取失败,则还采取Mybiats-plus的生成策略nextId方法就是获取分布式id的方法,其内部getBase()是更新时间戳的部分,由时间戳部分 | 数据中心部分 | 机器标识部分 | 序列号部分这四个部分组成方法是生成订单编号,使用了基因替换法,来解决在分库分表情况下,使用订单id和用户id查询订单时的全路由问题。

2025-05-07 11:24:26 918

原创 Redis | Lua脚本基础知识

Lua语言是在1993年由巴西一个大学研究小组发明,其设计目标是作为嵌入式程序移植到其他应用程序,它是由C语言实现的,虽然简单小巧但是功能强大,所以许多应用都选用它作为脚本语言,尤其是在游戏领域,暴雪公司的“魔兽世界”,“愤怒的小鸟”,Nginx将Lua语言作为扩展。Redis将Lua作为脚本语言可帮助开发者定制自己的Redis命令。

2025-05-06 15:00:46 942

原创 Java基础问题——八股盛宴 | 3w字分享

Java基础八股整理,67道题目!

2025-05-06 14:33:42 1326 1

原创 FutureTask和CompleteableFuture源码分析

同步:做了同步操作后,被调用者不会主动通知我结果,我需要主动查看结果。异步:做了异步操作后,被调用者会主动通知我结果是什么。阻塞:调用功能后,不能做其他事情。非阻塞:调用功能后,可以做其他事情。

2025-05-06 14:24:09 677

原创 Java ScheduledThreadPoolExecutor 源码解析 | 定时任务&周期性任务

ScheduledThreadPoolExecutor是Java并发包中的一个类,继承自ThreadPoolExecutor,主要用于执行定时任务和周期性任务。它实现了ScheduledExecutorService接口,提供了多种方法来安排和执行定时任务。

2025-05-05 09:31:46 1077

原创 简单聊聊分库分表

指数据表呈现有特定规则的分布。

2025-05-05 09:28:05 1163

原创 JVM性能调优的基础知识 | JVM内部优化与运行时优化

对象逃逸的本质是对象指针的逃逸。在计算机语言编译器优化原理中,逃逸分析是指分析指针动态范围的方法,它同编译器优化原理的指针分析和外形分析相关联。当变量(或者对象)在方法中分配后,其指针有可能被返回或者被全局引用,这样就会被其他方法或者线程所引用,这种现象称作指针(或者引用)的逃逸(Escape)。通俗点讲,如果一个对象的指针被多个方法或者线程引用时,那么我们就称这个对象的指针(或对象)的逃逸(Escape)。逃逸分析,是一种可以有效减少Java 程序中同步负载和内存堆分配压力的跨函数全局数据流分析算法。

2025-05-02 19:50:57 1450

原创 JVM | CMS垃圾收集器详解

CMS(Concurrent Mark Sweep)收集器是一种以获取 最短停顿时间为目标的收集器。采用的是标记-清除算法,整体分四个步骤(注:CMS中并不是只有标记-清除算法哦)初始标记(CMS initial mark) 标记清除GC Root直接关联对象,不用Tracing,速度很快并发标记(CMS concurrent mark) 进行GC Roots Tracing重新标记(CMS reamrk)修改并发标记 因用户程序变动的内容。

2025-04-29 19:28:53 1154

原创 Java 并发编程中阻塞队列 核心源码分析

ArrayBlockingQueue、LinkedBlockingQueue、PriorityQueue【学习优先级阻塞队列的 前提】、PriorityBlockingQueue、DelayedQueue、SynchronousQueue

2025-04-28 15:41:12 1059

原创 操作系统八股问——连载ing

用户态(UserModel)和内核态(Kernel Mode)是操作系统中两种运行模式。用于区分应用程序和操作系统内核的操作权限。用户态:应用程序在用户态下运行,权限较低,不能直接访问硬件或进行特权操作。应用程序需要通过系统调用与内核进行通信,由内核代为执行敏感操作。用户态优势:安全性高,即使程序出现问题也不会影响操作系统的稳定性。内核态:内核态是操作系统内核运行的模式,具有最高的权限,可以直接访问硬件资源和执行各种特权操作(如内存管理、进程调度)。

2025-04-28 14:57:06 872

原创 JUC并发工具-CountDownLatch、Semaphore、CyclicBarrier

本文分析了Java并发编程中的三个核心同步工具类:CountDownLatch、Semaphore和CyclicBarrier的实现原理。CountDownLatch基于AQS共享锁实现,通过countDown()递减计数器,await()阻塞直到计数器归零;Semaphore通过AQS管理有限资源,acquire()获取资源,release()释放资源;CyclicBarrier使用ReentrantLock和Condition实现可复用的线程屏障,await()会阻塞直到所有线程到达屏障点。三者都通过C

2025-04-27 15:23:30 1066

原创 微服务架构演变

架构演变之路

2025-04-27 13:00:10 413

原创 JVM-深入浅出垃圾回收机制 | 从对象出生到凋零

本文从如何判断一个对象是垃圾入手,分析垃圾回收算法,垃圾收集器的好坏之分,垃圾收集器的代表简述。

2025-04-26 22:28:17 1517

原创 Java ConcurrentHashMap源码分析

ConcurrentHashMap中,还会将hash值对HASH_BITS进行&运算,让hash值一定是一个正数。因为ConcurrentHashMap中数组上的数据的hash值,如果为负数,有特殊含义。散列算法是为了让hashCode的高16位参与到索引位置的计算中,从而尽可能的打散数据存放到数组上。代表当前位置数据在扩容,并且数据已经迁移到了新数组。第二步:判断是否结束,以及线程退出扩容,并且为空时,设置fwd,并且hash为moved直接移动到下个位置。如果当前已经初始化了,就代表下次扩容的阈值。

2025-04-26 21:33:18 1061

原创 JVM-从对象生命周期来看如何判断一个对象是垃圾?(垃圾回收的前提)

本文从如何判断一个对象是垃圾入手,分析垃圾回收算法,垃圾收集器的好坏之分,垃圾收集器的代表简述。

2025-04-25 14:40:21 380

原创 编程方法论——功底

想要拥有编写高质量代码的能力,我们就要学习一些编程的方法论.其中就包含面向对象(我们可以把它看成一种设计思想)、设计原则、设计模式、编程规范、重构技巧等

2025-04-24 20:57:13 1131

原创 JVM——运行时数据区 & Java内存布局

可以理解为一种规范。具体的实现可以认为是Java内存模型。

2025-04-14 15:48:26 839

Java基础问题-八股盛宴 - 3w字分享

Java基础问题-八股盛宴 - 3w字分享

2025-05-06

空空如也

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

TA关注的人

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