logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

Java 单例模式深度解析:从实现到底层原理

摘要:单例模式是确保类仅有一个实例的设计模式。理想单例需满足懒加载、线程安全、防反序列化和反射攻击4个条件。常见实现方式包括:1)枚举模式(最优解,完全满足所有条件);2)饿汉式(简单但不防反射和序列化);3)静态内部类(完美懒加载);4)双重检查锁(需volatile防止指令重排)。其中枚举模式因JVM底层保护机制成为最安全方案,而静态内部类则是无法使用枚举时的最佳替代方案。

文章图片
#java#单例模式#开发语言
缓存一致性的真相:从旁路缓存到 Binlog 异步架构

本文探讨了高并发系统中缓存与数据库一致性的解决方案。首先分析了Cache Aside模式的核心思想:读请求优先查询缓存,未命中时回源数据库;写操作先更新数据库再删除缓存,避免并发写导致的脏数据问题。然后比较了两种操作顺序的优劣,推荐"先更新数据库再删除缓存"的方案,并针对删除失败的情况建议引入消息队列重试机制。最后提出大型系统可采用基于MySQL Binlog的异步同步架构,通

文章图片
#java#mysql#缓存
Synchronized 底层揭秘:从对象头到操作系统管程的演进之路

摘要:JDK1.6对synchronized进行了智能优化,使其成为根据竞争强度动态调整的"智能锁"。其核心机制包括:对象头(MarkWord)记录锁状态,Monitor管理线程队列,以及锁升级策略。锁升级路径为:偏向锁(单线程场景)→轻量级锁(少量竞争,用户态CAS自旋)→重量级锁(激烈竞争,内核态线程挂起)。这种分级机制在性能与安全性间取得平衡:偏向锁优化独占访问,轻量级锁

文章图片
#c##开发语言
关于 Java 中的线程顺序控制:三种实战方案(join / CountDownLatch / CompletableFuture)

摘要:并发编程中控制线程执行顺序常见两种需求:汇聚型(A+B→C)和分叉型(A→(B,C))。本文对比三种实现方案:join()适用于简单场景但需主线程协调;CountDownLatch适合"多任务完成触发"场景,语义明确但不可重用;CompletableFuture推荐用于复杂任务编排,支持非阻塞式组合和异常处理。文章还给出选择建议和注意事项,强调应根据任务依赖关系选择合适工

文章图片
#java#服务器#前端
Java开发者学习Go语言:Go开发和Java开发的一些区别

摘要: Go语言在Web开发中以灵活性著称,其标准库net/http提供了完整功能,支持轻量级框架自由组合(如Gin、Echo),无强制项目规范,依赖注入可选,适合微服务和高性能场景。相比之下,Java的SpringBoot通过自动配置和强规范(分层结构、IoC容器)提供一站式解决方案,适合大型团队标准化开发,但灵活性较低。两者的差异源于语言设计哲学:Go强调显式与简洁,编译为单一二进制;Java

#java#学习#golang
从 Function Calling 到 MCP:理解 Agent 工具调用的底层通信机制

本文深入解析了Agent工具调用的底层通信机制,重点探讨了MCP协议的设计原理。主要内容包括: FunctionCalling的局限性:不同框架工具定义方式不统一,导致工具与框架耦合紧密 MCP协议的定位:作为工具侧的标准化接口,实现工具服务与Agent框架的解耦 底层通信原理:详细讲解了操作系统层面的进程间通信机制,特别是管道的工作方式 MCP的两种实现: 本地stdio模式:基于管道通信,适合

从 Function Calling 到 MCP:理解 Agent 工具调用的底层通信机制

本文深入解析了Agent工具调用的底层通信机制,重点探讨了MCP协议的设计原理。主要内容包括: FunctionCalling的局限性:不同框架工具定义方式不统一,导致工具与框架耦合紧密 MCP协议的定位:作为工具侧的标准化接口,实现工具服务与Agent框架的解耦 底层通信原理:详细讲解了操作系统层面的进程间通信机制,特别是管道的工作方式 MCP的两种实现: 本地stdio模式:基于管道通信,适合

从 Function Calling 到 MCP:理解 Agent 工具调用的底层通信机制

本文深入解析了Agent工具调用的底层通信机制,重点探讨了MCP协议的设计原理。主要内容包括: FunctionCalling的局限性:不同框架工具定义方式不统一,导致工具与框架耦合紧密 MCP协议的定位:作为工具侧的标准化接口,实现工具服务与Agent框架的解耦 底层通信原理:详细讲解了操作系统层面的进程间通信机制,特别是管道的工作方式 MCP的两种实现: 本地stdio模式:基于管道通信,适合

Claude Code 源码架构分析

Claude Code 是 Anthropic 官方的命令行 AI 编程助手。用户在终端中与 Claude 对话,Claude 通过调用各种工具(读写文件、执行 shell 命令、搜索代码、访问网络等)来完成软件工程任务。核心理念:这不是一个简单的 API 封装,而是一个完整的、具有丰富交互体验的终端应用程序。它包含:项目采用 10 层架构,从底层基础设施到顶层用户界面:依赖方向:上层依赖下层,下

#架构
Claude Code 源码架构分析

Claude Code 是 Anthropic 官方的命令行 AI 编程助手。用户在终端中与 Claude 对话,Claude 通过调用各种工具(读写文件、执行 shell 命令、搜索代码、访问网络等)来完成软件工程任务。核心理念:这不是一个简单的 API 封装,而是一个完整的、具有丰富交互体验的终端应用程序。它包含:项目采用 10 层架构,从底层基础设施到顶层用户界面:依赖方向:上层依赖下层,下

#架构
    共 11 条
  • 1
  • 2
  • 请选择