logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

Java Agent 字节码增强技术到底有多野?

Java Agent(Java 代理)不是什么第三方框架,而是 JVM 亲生的底层机制。它的本质是一个特殊的 Jar 包。当你启动 Java 程序时,JVM 会在执行你写的main()方法之前,先去执行这个 Agent 里的特殊方法。这就好比在程序的“受精卵”阶段,你就把一个“间谍”植入了进去。Java Agent 字节码增强技术,赋予了架构师“运行时上帝视角”。优势:绝对的零侵入,业务团队毫无感

文章图片
#java#python#开发语言
如果不用 Pipeline,MGET 查 5 万个 Key 会怎样?

架构优化从来不是靠死记硬背几个命令,而是对计算机底层物理法则(网络 I/O、CPU 周期、内存模型)的敬畏。如果你需要异构命令的网络提速,请拥抱Pipeline。如果你需要单一数据的极速获取,请使用MGET/MSET。当你面对海量大盘数据,请用Chunked 切片 + 混合双打,这才是兼顾吞吐量与系统稳定性的宗师级手法。

文章图片
#bootstrap#前端#html
自动装配:干掉 XML 的幕后黑手是谁?扒开 @SpringBootApplication 的底裤

触发点:执行main()方法,触发。拿名单去各个 jar 包里读取.imports或文件,把官方写好的 100 多个配置类名单全拿出来。过安检:Spring 挨个检查这 100 多个类头上的条件注解。按需装配:因为你只引入了,所以只有 Web 相关的条件成立。其余 90 多个无关组件的配置类全部被无情丢弃。大功告成:最终通过安检的几个配置类被实例化,Tomcat 启动,DispatcherServ

文章图片
#xml
Spring Boot 为什么“抛弃”了 spring.factories?

是 Spring Boot 早期实现“约定优于配置”和自动装配的天才设计。它通过一份“黄页”,巧妙地解决了 Java SPI 的局限性,支撑起了 Spring Boot 庞大的生态系统。然而,随着项目规模的增长和云原生(AOT)时代的到来,这个“什么都管”的“上帝文件”逐渐成为了性能瓶颈。Spring Boot 3.0 将其“废弃”,进化为更专一、更轻量、更高性能的文件列表,完成了它光荣的历史使命

文章图片
#spring#spring boot#python
为什么 Spring 不让你直接 `new` 对象?

核心创建一系列相关或相互依赖的对象家族。场景: 现在的用户很挑剔。买 iPhone 必须配 iOS 系统和 Lightning 线;买华为必须配鸿蒙和 Type-C 线。这是成套的(产品族)。如果用上面的工厂方法,你可能造出了 iPhone,却配了 Android 系统(不兼容)。抽象工厂iPhoneiOSLightning。代码// 苹果工厂保证产出的手机和系统是配套的应用: 适合换“皮肤”、换

文章图片
#spring#gradle#java
为什么 Spring 不让你直接 `new` 对象?

核心创建一系列相关或相互依赖的对象家族。场景: 现在的用户很挑剔。买 iPhone 必须配 iOS 系统和 Lightning 线;买华为必须配鸿蒙和 Type-C 线。这是成套的(产品族)。如果用上面的工厂方法,你可能造出了 iPhone,却配了 Android 系统(不兼容)。抽象工厂iPhoneiOSLightning。代码// 苹果工厂保证产出的手机和系统是配套的应用: 适合换“皮肤”、换

文章图片
#spring#gradle#java
微服务:把一个简单的问题,拆成 100 个网络问题

结果,你虽然有 10 个服务,但每次上线都得 10 个团队坐在一起,喊“1、2、3”一起按发布按钮。微服务不是为了“性能”而生的(实际上它通常会降低性能),它是为了**“规模”**而生的。你的首页有一个不重要的功能:“显示今日星座运势”。当星座服务挂了时,直接快速失败(Fast Fail),不要卡死线程,保住核心业务。这叫**“分布式单体”**。你失去了单体的简单,却承受了微服务的痛苦。最后你发现

文章图片
#微服务#网络#架构
1=1 就能攻破你的网站?黑客最爱用的 SQL 注入到底有多神?

就像是给机器人下命令时,手里拿一张填空表。

文章图片
#sql#oracle#数据库
为什么 MySQL 的 LIKE 慢如蜗牛,而 ES 快如闪电?

如果说是一个老老实实、按部就班的**“图书管理员”“速记员”**。当你在几亿条数据中搜索一个词时,MySQL 需要把所有数据(全表扫描)。而 ES 只需要,就能直接告诉你答案。这个“关键词表”,在技术上就叫做。它是所有搜索引擎(Google, Baidu, ES, Lucene)的核心基石。

文章图片
#mysql#elasticsearch#数据库
你的 Git Log 像“流水账”?一招 rebase -i 教你“合并”提交,还你清爽记录

是一个极其强大的“Git 历史美容工具”。通过熟练运用picksquashfixup等命令,我们可以将开发过程中的“流水账”式提交,精炼成一份清晰、专业、具有可读性的“作品集”。这不仅是对代码审查者的尊重,更是专业精神的体现。记住,你的 Commit Message,是你留给未来自己和同事的、最重要的“代码注释”。一个干净的提交历史,是比任何文档都更宝贵的财富。

文章图片
#git#elasticsearch#大数据
    共 35 条
  • 1
  • 2
  • 3
  • 4
  • 请选择