自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 数据库技巧:INSERT IGNORE的高效插入策略

就像一个温柔的数据库管理员,遇到重复数据时不会大喊大叫抛出错误,而是默默跳过,继续处理下一条。无论是批量导入数据、避免重复插入,还是处理日志重复上报,它都能轻松搞定。不过,它也有小脾气,比如会忽略所有错误(不只是重复键),所以用的时候得小心。总之,是数据库操作中的“温柔一刀”,帮你优雅地解决问题,但别忘了检查它的“副作用”哦!

2025-06-13 15:00:34 581

原创 什么?工作五年还不了解SafePoint?

Safepoint(安全点)是指程序执行过程中一个特定的位置,在这个位置上 JVM 能安全地暂停线程,以执行某些需要全局一致性操作的任务(如 GC)。换句话说,只有当所有线程都到达了 Safepoint,JVM 才能安全地执行某些操作。区别于初识安全点的时候局限于GC中的安全点概念,这里给安全点一个比较全面的定义:Safepoint 可以理解成是在代码执行过程中的一些特殊位置,当线程执行到这些位置的时候,线程可以暂停。在 SafePoint 保存了其他位置没有的一些当前线程的运行信息,供其他线程读取。

2025-06-13 14:59:56 574

原创 探索Solana SDK实战:Web3开发的双路径与轻量模块化

通过本次实战探索,你已全面掌握Solana SDK的两种Web3开发路径!单一依赖方式稳健可靠,轻量模块化方式则以高效灵活脱颖而出,尤其适合追求极致效率的开发者。从环境搭建到本地部署,每一步都为你铺就Web3开发的坚实道路。Solana的超高性能结合Rust的强大功能,未来可期。立即动手实践,用轻量模块化方式开发更复杂的智能合约,或结合Anchor框架探索零拷贝特性,打造属于你的Web3创新传奇!

2025-06-13 14:57:46 404

原创 Dubbo 高可用性核心机制详解与实战(上)

java代码解读复制代码/** * 订单服务接口 * * @since 1.0.0 */ public interface OrderService { /** * 创建订单 (同步) * * @param request 订单请求, 不能为空 * @return 订单DTO */ OrderDTO createOrder(@NotNull @Valid OrderRequest request);

2025-06-13 14:57:19 453

原创 如何在代码里面更改数据库密码?

在代码中更改数据库密码通常涉及以下几个步骤,具体实现取决于你使用的编程语言和数据库系统。请根据你的具体技术栈调整上述示例,并确保遵循组织的安全策略。

2025-06-13 14:55:22 138

原创 2025最新java高频面试题(八股文)

Object中的equals()方法用于判断this和obj本身的值是否相等,即用来判断调用equals方法的对象和形参obj所引用的对象是否是同一对象。反之,则返回false。AVA反射机制是在运行状态中,对于任意一个类,都能够获取这个类的所有属性(属性的权限修饰符,数据类型,变量名等)和方法(方法名,返回值,参数等),构造器,运行时类实现的接口,所在的包,注解等,对于任意一个对象,都能够调用它的任意一个方法和属性,这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制。

2025-06-13 13:58:08 742

原创 Java学习第3天 - 面向对象高级特性

为什么需要抽象类?java代码解读复制代码/* 问题:有些父类的方法无法给出具体实现 - 比如 Animal 类的 makeSound() 方法 - 不同动物的叫声完全不同 - 父类无法给出通用实现 解决方案:抽象类 - 包含抽象方法的类必须声明为抽象类 - 抽象类不能被实例化 - 子类必须实现所有抽象方法 */java代码解读复制代码。

2025-06-12 17:08:40 211

原创 Java 基础篇必背综合知识点总结包含新技术应用及实操指南

Java 基础,Java 必背知识点,Java 新技术应用,Java 实操指南,Java 面向对象,Java 集合框架,Java 并发编程,Java 异常处理,Java IO 流,Java Lambda 表达式,Java Stream API,Java 新特性,Java 设计模式,Java 实战开发,Java 编程基础。:Java 11+支持的原生编译技术,将Java代码编译为本地机器码,大幅提升启动速度和减少内存占用。:Java 15引入的多行字符串语法,简化了JSON、SQL等复杂字符串的编写。

2025-06-12 17:08:08 526

原创 通过 MongoDB URL 连接到 MongoDB 数据库

要使用。

2025-06-12 17:07:30 100

原创 全网最强Java面试八股文合集(持续更新)

本文主要介绍了Java并发编程和JVM内存管理的核心知识点。在并发编程方面,详细解析了ConcurrentHashMap的线程安全实现原理(CAS+锁),线程池的核心参数、执行原理及四种类型(固定、单例、缓存、定时),以及ThreadLocal的内存泄漏问题。在JVM方面,阐述了运行时数据区的组成(堆、栈、方法区等),垃圾回收机制(可达性分析/引用计数法),以及三种垃圾回收算法(标记清除、标记整理、复制算法)和分代收集策略。同时还讨论了栈溢出、堆栈区别、常量池等关键概念,为Java开发者提供了全面的底层原理

2025-06-12 17:06:59 771

原创 Go + open ai 实现一个 mini manus

这个全面的指南应该能为您提供一个坚实的基础。关键是从一个部分开始,让它工作起来 (例如,规划器的 LLM 调用),然后逐步构建其他组件。请务必仔细查阅 Claude 和 Qwen 的 API 文档。这将是一个通用的客户端。您需要根据 Claude 和 Qwen 的特定请求/响应格式对其进行调整。在项目根目录下创建一个。

2025-06-11 16:52:13 458

原创 Python项目文件组织与PyCharm实践:打造高效开发环境

良好的项目结构如同房屋地基,PyCharm的深度配置则是现代化开发工具链。立即创建项目模板,标准化新项目启动流程配置代码检查规则,形成团队统一编码标准掌握至少3种调试技巧,提升问题定位效率定期清理无用配置(备份)记住:工具链的终极目标是让人脑专注于创造性工作,而非机械操作。持续优化你的开发环境,让编码回归思考的本质。

2025-06-11 16:51:28 561

原创 Mac下“xcrun error invalid active developer path“报错

的版本和新系统不兼容、不适配导致的,这个时候只需要更新一下。最近Mac更新了系统之后发现,在终端中使用。在网上搜索了下解决办法,这个问题可能是因为。等命令即可正常使用了。

2025-06-11 16:44:19 299

原创 2025最新Java面试题、八股文大全

Spring Boot 是一个开源的Java开发框架,由Pivotal团队开发,其核心目标是简化新Spring应用的初始搭建和开发流程。它以Spring框架为基础,通过自动配置和约定优于配置的原则,极大程度地减少了手动配置的工作量,使开发者能够快速构建独立、生产级别的应用程序。快速启动:内嵌了如Tomcat、Jetty或Undertow等Servlet容器,使得Spring应用可以作为一个独立的可执行JAR文件运行,无需单独部署到外部的应用服务器。自动配置。

2025-06-11 15:27:03 1016

原创 查找算法全解析:从顺序查找、折半查找到哈希查找

找散落的钥匙:顺序查找(虽然慢,但总能找到)查百万条销售数据:折半查找(效率高到老板夸你)实时查询用户信息:哈希查找(快到怀疑人生)下次再遇到"文件失踪案",记得用这三大神探帮你破案!毕竟,好的算法就像好用的抽屉——让生活少点混乱,多点惊喜!

2025-06-10 13:50:38 281

原创 重构手法——代码健壮性增强类 | 防御性编程 | 引入断言

引入断言”(Introduce Assertion)是一种重构手法,通过在代码中添加断言来明确表达某些假设或条件,从而提高代码的可读性和可维护性。断言通常用于验证程序在某个特定点的状态是否符合预期,如果不符合,程序将抛出异常或终止执行。

2025-06-10 13:49:05 239

原创 Kafka ReplicaManager 深度解析:副本管理的核心引擎

ReplicaManager 是 Kafka Broker 中最核心的组件之一,负责管理分区副本的完整生命周期,包括副本同步、ISR 管理、高水位更新、日志追加等关键功能。它是 Kafka 数据一致性和高可用性的基石。本文将结合源码深入解析 ReplicaManager 的设计原理和实现机制。定义: 与 Leader 副本保持同步的副本集合组成: Leader 副本 + 所有跟上进度的 Follower 副本作用: 只有 ISR 中的副本才有资格被选举为新的 Leader。

2025-06-10 13:48:29 855

原创 Java面试程序员必备(八股文)

新生代老年代持久代元空间不停的创建复制新生代向一端移动老年代引用计数器0GCRoot引用链G1 :JDK1.9以后的默认垃圾回收器,支持并发,采用标记整理+复制算法,注重响应速度还有一个自定义类加载器当一个类加载器收到类加载请求时,会先把这个请求交给父类加载器处理,若父类加载器找不到该类,再由自己去寻找。该机制可以避免类被重复加载,还可以避免系统级别的类被篡改静态变量常量方法区class正确性设置符号引用直接赋值初始化强引用:new的对象。哪怕内存溢出也不会回收软引用:只有内存不足时才会回收。

2025-06-10 13:10:13 1642

原创 Mysql 百万级数据迁移实战笔记

小数据量可以使用mysqldump命令进行导入导出,这种方式简单便捷。数据量较大,且有足够的迁移耐心时,可以选择自己写脚本,选择合适的并行方案迁移数据,这种方式编码成本较高。数据量较大,且希望能在短时间内完成数据迁移时,可以通过mysql导入导出文件的方式来迁移,这种方式效率较高。

2025-06-09 21:45:51 604

原创 Spring不同类型的ApplicationContext的创建方式

类型核心特点适用场景(手动)底层核心,需手动管理Bean定义框架开发、自定义容器扩展类路径XML配置,适合传统Spring项目遗留系统迁移、明确分离配置与代码文件系统XML配置,支持外部化配置动态加载外部配置(如Docker挂载)Java注解驱动,代码即配置,无XML依赖现代Spring/Spring Boot应用(非Web)集成Servlet容器,自动配置Spring MVCSpring Boot Web应用(MVC、RESTful接口)

2025-06-09 21:45:20 596

原创 一起来学 Langgraph [第二节]

initial_input 是输入数据,通常是用户的提问消息,和我们之前讲的invoke方法的入参是一个含义。在上面的代码中我们定义的输入的数据结构为InputState,输出的数据结构为OutputState,这样我们的节点接收的数据结构就是InputState类型, 图的总的数据结构为OverallState是继承了InputState和OutputState的,也就是会同时包含question和answer两个属性,一个图必须有一个总的State,也就是说这里的OverallState是必须的。

2025-06-09 21:44:46 992

原创 面试官问:Redis和MySQL数据一致,为什么还需要MySQL?[特殊字符]

上面的叙述说明,真正的业务,像MySQL一样的关系型数据库和像Redis一样的分布式缓存并不是互相矛盾,互相排斥的,而是相互互补,相互合作的关系。两者有各自的优点,可以根据具体业务结合来使用。如果你有更多方案或者文章中有错漏之处,请在评论区提出帮助笔者勘误,祝你拿到更好的offer!

2025-06-08 15:48:46 462

原创 Jpa中的@ManyToMany实现增删

在使用jpa注解生成三方表实现增删JPA提供的关联注解功能倒是强大,可以帮助节省一些事情,但是技术选型就看自己擅长。

2025-06-08 15:45:33 253

原创 @Bean 在@Configuration 中和普通类中的本质区别

特性@Configuration(Full 模式)普通类(@Component 等)CGLIB 代理✓ 自动创建代理类✗ 不创建代理✗ 普通 Java 类内部方法调用返回容器中的 Bean创建新实例创建新实例单例保证✓ 自动保证✗ 需要手动处理✗ 需要手动处理启动性能较慢(代理开销)快最快内存占用较高(代理类)低最低Spring 版本要求3.0+5.2+2.5+适用场景复杂配置、内部调用简单配置、无内部调用简单 Bean 定义。

2025-06-08 15:45:04 666

原创 Java八股文——微服务相关面试题最详细的回答!

这个也是CAP分布式系统设计理论 ,BASE是CAP理论中AP方案的延伸,核心思想是即使无法做到强一致性 (StrongConsistency,CAP的一致性就是强一致性),但应用可以采用适合的方式达到最终一致性(Eventual Consitency)。它的思想包含三方面:1、Basically Available(基本可用):基本可用是指分布式系统在出现不可预知的故障的时候,允许损失部分可用性,但不等于系统不可用。2、Soft state(软状态)

2025-06-08 15:25:13 821

原创 记录一次,利用AI DeepSeek,解决工作中算法和无限级树模型问题

一般在公司的业务中,很少涉及到数据结构和算法问题。很多人都是为了面试,去卷算法题,卷数据结构。我也工作了5年左右了,其实也没写过什么牛逼的算法业务,基本都是体力活,没什么东西,全是CRUD,我只是个码农之王而已。但是,这次还真的遇到了实际的算法业务,这不得好好写篇文章,吹一下通过AI,拿到了模型代码后,最后就根据代码的入参,组合出方法需要的参数结构,通过调用就可以解决我的需求,但是如果不同AI,我自己可能写不出来,所以,还是要多发散思维,毕竟时间都挺宝贵,好啦就到这啦,88。

2025-06-06 15:44:06 351

原创 微服务版Hello World之使用Helm部署

这篇文章介绍了 Helm 的核心概念、如何安装,以及通过部署 MySQL 来演示了 Helm 的基本用法。最后部署一个 Hello World 的接口服务到 k8s 集群。

2025-06-06 15:43:09 594

原创 linux简单理解输入输出重定向

要理解输入输出重定向,一定要理解文件的描述符!对于每个进程,都会产生3个默认的文件描述符,分别是 标准输入、标准输出 和 错误输出,用文件描述符id012来表示。其重定向就是修改这些文件描述符的指向,将他们指向到文件中即可。对于输入重定向而言,有一种表达方式是,它可以和输出重定向结合,将终端中输入的文件写入到文件中,比如:bash体验AI代码助手代码解读复制代码表示将终端输入的ab...e字符提供给cat命令,而cat将内容重定向到文件filename中。可以发现上面有1>>

2025-06-06 15:40:33 301

原创 2025 Java 面试八股文汇总

在Spring容器启动时,通过配置文件(如XML文件、Java注解或Java配置类)定义Bean。

2025-06-06 15:24:08 1403

原创 redis的简单动态字符串(SDS, Simple Dynamic String)

scss体验AI代码助手代码解读复制代码:用于声明并初始化一个指向 SDS 头结构的指针变量shT是 SDS 类型(如 8, 16, 32, 64),s是指向字符串数据的指针,##是连接符,将sdshdr和T连接起来形成结构体名(如sdshdr8), 计算方式:用字符串指针s减去头结构的大小,得到头结构的起始地址,结果:声明了一个sh变量,指向 SDS 的头结构:与第一个类似,但不声明变量,直接返回头结构指针,同样通过字符串指针s。

2025-06-05 21:55:50 573

原创 从零开始Node之旅 —— 事件模型

尽管 Node.js 主线程是单线程的,但它通过底层的 libuv 库实现了与操作系统内核的交互,利用系统级的多线程处理 I/O 操作(如在 Windows 系统中使用 IOCP,在 Linux 系统中使用 epoll)。而异步任务则不会立即进入调用栈,而是由对应的异步 API(如定时器、I/O 操作、事件监听)处理,当异步操作完成后,相关回调函数会被加入 ** 任务队列(Task Queue)** 等待执行。Node.js 的核心架构是事件驱动的,所有的异步操作最终都会转化为事件的触发和处理。

2025-06-05 21:54:45 422

原创 构建一个简单智能客户服务系统的案例

MCP架构允许多个Spring Boot应用作为MCP服务器,它们连接到数据库并使用Spring AI MCP服务器支持来向MCP客户端应用暴露@Tool方法。这个场景案例展示了如何使用Spring AI和MCP构建一个智能的分布式系统,其中AI能够自动调用多个服务的功能来提供综合性的客户服务。构建一个智能客户服务系统,包含客户信息服务和订单服务两个MCP服务器,以及一个AI客户端应用。

2025-06-05 21:54:12 391

原创 Java面试八股文合集(持续更新)

本文总结了Java核心面试知识点,主要内容包括:Java基础:数据类型、面向对象特性、内存模型、集合框架、异常处理等多线程:线程状态、同步机制、锁原理、死锁处理等数据结构:HashMap底层实现、ConcurrentHashMap线程安全机制并发编程:CAS原理、AQS框架、乐观锁悲观锁对比 文章详细解析了Java面试中的高频考点,对每个知识点进行了简明扼要的说明,并提供了底层实现原理和实际应用场景。内容涵盖面广,是Java开发者准备面试的重要参考资料。

2025-06-05 21:38:17 796

原创 解锁多线程编程:深入探索同步容器与并发容器

在多线程编程领域,安全地管理共享数据是一项核心挑战。Java语言提供了丰富的容器类,旨在帮助开发者高效地管理数据。其中,同步容器和并发容器是解决多线程数据共享问题的两种主要手段。本文将详细介绍同步容器的概念,并通过Java代码实例,对比分析同步容器与并发容器的差异。同步容器和并发容器在实现线程安全方面采用了不同的策略。同步容器简单易用,但在高并发场景下性能受限;而并发容器通过更细粒度的锁机制或其他并发控制手段,提供了更高的并发性和伸缩性。在实际开发中,开发者应根据具体的应用场景和需求,选择合适的容器类型。

2025-06-04 21:26:28 906

原创 再见,jemalloc!一代内存分配神器的落幕与传承

可预测的行为和性能分析: jemalloc 提供了丰富的内省、内存管理和调优功能,允许开发者更深入地了解和控制内存分配行为,并提供了堆分析等工具,帮助定位和解决内存问题。它在过去十几年中,为无数应用程序和服务提供了坚实的内存管理基础,默默支撑着互联网的平稳运行。降低内存碎片: jemalloc 通过其精巧的设计,能够更有效地管理内存块,减少因频繁分配和释放不同大小内存而产生的碎片,从而提高内存利用率。的主仓库已沉寂,但它所代表的对极致性能的追求、对技术细节的打磨精神,将永远激励着我们。

2025-06-04 21:23:42 696

原创 AI Agent需要什么样的数据库?

Databricks 在 2025 年 5 月 14 日正式宣布以 10 亿美元收购开源数据库初创公司 Neon[1][2],它的产品是一款兼容 PostgreSQL 的 Serverless 数据库。Neon 的 slogan 是 "",其最初的目的是为应用开发者提供一个低成本、开发高效的数据库底座。回顾 Databricks 近两年的收购策略,Databricks 正围绕其 Data + AI 战略迅速补强 AI 短板,所收购的产品已几乎可组成一条完整的 AI 工作流水线。

2025-06-04 21:23:02 641

原创 2025最新JAVA面试八股文!

【Java核心面试摘要】150字版本:本文涵盖Java基础、JVM、多线程核心知识点。基础篇解析面向对象特性(封装/继承/多态)、集合框架(ArrayList/HashMap等对比)、异常处理机制;JVM篇详解内存模型、GC算法(标记清除/复制/分代回收)及类加载过程;多线程篇对比进程与线程,介绍三种创建线程方式(Thread/Runnable/Callable)。重点包括:==与equals区别、String的不可变性、HashMap线程不安全解决方案、JVM内存分区及OOM排查、线程安全实现。附红黑

2025-06-04 13:59:20 826

原创 Redis 内存逐出策略解析:选型与实战

策略逐出范围逐出规则适用场景性能特点版本要求noeviction不逐出拒绝写入数据完整性要求极高写入可能阻塞所有版本所有键最近最少使用一般缓存场景均衡的性能所有版本有 TTL 的键最近最少使用希望结合过期机制的缓存依赖过期键设置所有版本所有键随机键访问概率相近CPU 消耗极低所有版本有 TTL 的键随机键访问概率相近且结合过期机制CPU 消耗低所有版本有 TTL 的键即将过期优先保留寿命长的数据计算开销中等所有版本所有键。

2025-05-30 16:09:11 627

原创 Rust智能指针:解锁内存管理的进阶之道

Box<T>被定义成拥有一个元素的 tuple struct(例子)MyBox<T>rust体验AI代码助手代码解读复制代码// 报错 assert_eq!(5, x);assert_eq!(5, *y);智能指针是Rust内存管理的核心组件,通过Box、Rc、RefCell等类型,Rust提供了灵活而安全的内存操作方式。Box适用于需要在堆上分配数据的场景,Rc解决了多重所有权的问题,而RefCell通过运行时借用检查实现了内部可变性。

2025-05-30 16:08:22 926

原创 RocketMQ磁盘三个核心配置问了主流AI感觉都不对,所以我决定自己翻源码

RocketMQ磁盘使用率核心配置有三个主要是配置磁盘超过多少会进行消息清理主要如果配置了多个存储路径,单个存储路径超过该阈值则对其他路径进行写入则主要是磁盘超过该阈值,broker会直接对外停止服务包括消息的写入和获取所以如果线上的RocketMQ磁盘超过75%左右或者80%左右就需要警惕报警。查看最后我这里整理一份总结的表格给大家参考配置参数默认阈值75%85%90%有效范围10%-95%30%-85%35%-90%主要作用触发消息清理多磁盘切换服务熔断保护超阈值后果立即清理过期消息。

2025-05-30 16:07:52 773

空空如也

空空如也

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

TA关注的人

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