自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(615)
  • 资源 (73)
  • 收藏
  • 关注

原创 用Java手写jvm之系列

用Java手写jvm之实现java -version的效果 。

2024-07-22 14:26:59 29

原创 用Java手写jvm之实现java -version的效果

本文来用纯纯的Java代码来实现。

2024-07-22 14:24:09 203

原创 字节码编程之bytebuddy结合javaagent支持多种监控方式

打印方法执行耗时是监控,获取程序运行的JVM信息是监控,链路追踪也是监控。本文看下如何实现一个通用的监控解决方案。

2024-07-19 18:09:29 296

原创 字节码编程之bytebuddy结合javaagent实现单机版链路追踪

本文看下通过如何实现单机版的链路追踪,了解了单机版的链路追踪,对于分布式场景的链路最终其实也就会了一大半,分布式场景下的链路追踪其实就是多了一个微服务调用另一个微服务时将traceId带上的工作。如下:通过traceId就可以将整个调用链串起来了。本文先只来看下基于treadlocal的单机版链路追踪如何实现。

2024-07-19 10:56:24 351

原创 字节码编程bytebuddy之通过Advice动态修改方法参数值

本文看下如何通过bytebuddy的advice切面技术来动态修改方法入参值。

2024-07-17 11:02:32 344

原创 字节码编程之获取程序的内存消耗

本文通过Javaaagent的方式来启动一个定时程序,不断的获取并输出程序的jvm内存(堆和非堆)信息以及gc信息。

2024-07-17 09:35:45 309

原创 字节码编程bytebuddy之结合javaagent监控方法执行耗时

本文看下通过bytebuddy结合javaagent如何实现监控方法耗时功能。

2024-07-16 11:36:39 148

原创 字节码编程javassist之结合javaagent监控方法执行耗时

本文看下javassist如何结合javaagent来实现监控方法执行时长功能。

2024-07-12 17:04:38 377

原创 maven项目设置manifest清单文件插件配置

比如编写javaagent程序时,或者是生成可执行jar包时都需要配置manifest清单文件,本文看下通过maven插件如何来做。

2024-07-12 15:12:03 238

原创 字节码编程bytebuddy之实现抽象类并并添加自定义注解

本文看下使用bytebuddy如何实现抽象类,并在子类中添加自定义注解。

2024-07-11 16:53:03 314

原创 字节码编程bytebuddy之获取方法信息和方法入参信息

本文看下通过bytebuddy如何获取方法信息和方法的入参信息。

2024-07-10 17:53:21 293

原创 字节码编程bytebuddy之监控方法执行耗时

本文看下如何使用bytebuddy来监控方法执行耗时。

2024-07-10 16:47:31 179

原创 字节码编程bytebuddy之helloworld

defineMethod("main", void.class, Modifier.PUBLIC + Modifier.STATIC) // 定义方法修饰符.withParameter(String[].class, "args") // 定义方法参数,要和defineMethod配套出现.intercept(FixedValue.value("say hi from byte buddy")) // 这会定义一个String变量,并赋常量值// 输出类字节码try {

2024-07-10 13:53:42 124

原创 字节码编程javassist之生成带有注解的类

本文看下如何使用javassist生成带有注解的类。

2024-07-09 19:18:20 182

原创 字节码编程javassist之修改返回值

本文看下如何修改返回值。

2024-07-09 15:57:50 340

原创 字节码编程javassist之获取指令码

本文看下使用javassist如何查看方法对应的字节码指令信息。

2024-07-09 15:25:44 291

原创 字节码编程javassist之获取注解信息

本文看下使用javassist如何获取类和方法上的注解信息。

2024-07-09 14:57:11 287

原创 字节码编程javassist之增加异常捕获

本文看下如何增加try catch异常捕获。

2024-07-08 18:08:24 300

原创 字节码编程javassist之获取方法参数类型,参数值列表,返回值等

本文看下如何获取方法参数名称,参数值,返回值等。

2024-07-08 17:37:26 153

原创 字节码编程javassist之定义局部变量

本文看下如何定义局部变量。

2024-07-08 14:52:44 226

原创 字节码编程javassist之打印方法耗时和入参

本文看下如何实现打印方法耗时和入参。

2024-07-08 14:04:48 253

原创 字节码编程javassist之结合hotswap在运行期动态修改方法返回值

本文看下如何通过javassist结合hotswap在运行期动态修改方法的返回值。

2024-07-05 19:54:05 301

原创 字节码编程javassist之定义方法和返回值

本文看下如何使用javassist来定义方法和返回值。

2024-07-05 15:42:24 370

原创 字节码编程javassist之定义各种属性

本文看下如何使用javassist来定义属性。

2024-07-05 14:55:23 394

原创 字节码编程javassist之helloworld

本文一起来看下,如何使用javassist来生成一个helloworld程序。

2024-07-05 11:26:14 167

原创 字节码编程ASM之生成变量并sout

本文看下如何通过asm生成变量并sout。

2024-07-04 19:42:01 306

原创 字节码编程ASM之插桩方法调用记录

正式开始之前,先分享一个让人”悲伤“的真实的故事。那是一个风和日丽的周六的下午,俺正在开开心心的打着羽毛球,突然接到了来自于最不想联系的那个人。瞬间整个人都不好了啊。事后复盘导致bug出现的原因是测试场景覆盖的不够全导致,也就是导致出现问题的方法在测试环境压根就没有调用到过。而且因为这种原因导致的线上bug,已然不是第一次遇到了,所以我就在想,有没有什么办法能够规避这种问题的发生呢?测试用例每次都会投入大量的时间和测试同学一起评审啊!还是会出现场景覆盖不全的问题。

2024-07-03 17:22:44 753

原创 字节码编程ASM之插桩调用其他类的静态方法

本文看下通过ASM如何实现插桩调用其他类的静态方法。

2024-06-28 15:34:46 364

原创 字节码编程ASM之插桩打印方法参数

本文看下如何对已有类进行插装。看下打印如何实现打印方法入参。

2024-06-28 09:43:54 137

原创 字节码编程ASM之插桩方法执行耗时

本文看下如何对已有类进行插装。以最经典的方法执行耗时作为例子。

2024-06-27 16:56:44 185

原创 字节码编程ASM之两数之和

源码 。看下如何使用ASM来写如下的类:1:编码源码:写了非常详细的注释,看下吧,还有哪里不懂的可以留言告知。然后运行下:反编译看对应的Java代码:一个多么简单的加法函数,通过底层字节码方式来编写还是挺麻烦的,只能说底层还是很复杂的,但是想要进阶,不了解底层又是不行的。所以,在这winter already coming的行业环境下,加油吧!!!JVM 虚拟机字节码指令表 。

2024-06-27 13:51:43 303

原创 字节码编程ASM之idea插件asm bytecode outline的使用

直接用ASM来编写字节码程序难度其实还是蛮大的,为此,就有热心人事开发了相关的,其中比较优秀的一个是asm bytecode outline,本文就来一起看下如何使用。

2024-06-27 10:24:25 222

原创 字节码编程之系列

字节码编程ASM之helleworld 。

2024-06-27 09:44:57 272

原创 字节码编程ASM之helleworld

本文一起来看下,如何使用ASM来生成一个helloworld程序。

2024-06-27 09:43:25 330

原创 数据结构之前缀树

思想:空间换时间,因为需要维护非常多的引用,所以比较占用空间,但能够快速定位所以时间较短时间复杂度:log特点:根节点不包含字符每一条路径所有节点的字符拼接在一起就对应一个字符串拥有相同前缀的多个字符串共享相同前缀。

2024-06-25 15:58:28 340

原创 idea插件开发之如何获取用户输入的变量名(类变量,局部变量等)

比如我们要开发一个变量名称补全功能的插件,此时就需要在用户输入时获取当前的最新输入内容,本文就来看下如何来做。

2024-06-21 17:51:36 308

原创 idea插件开发之一起来开发个打印方法入参和返回值的插件吧!

在开发过程中为了调试代码我们就可能就需要知道某个方法入参的值是什么,或者是返回值是什么。此时,我们的解决办法一般都是debug,但是debug的效率说实话其实是不高的,特别是不断的调试,不断的debug。所以为了解决(😅,彻底解决不用debug,不太可能,但肯定能在一定程度上缓解吧)这个痛点问题,我们就来尝试开发一个idea插件吧。

2024-06-21 11:43:22 819

原创 idea插件开发之一起来开发个map转对象的插件吧!

在实际工作中,经常有这样的场景,从map中获取值来赋值到某个对象上,这无疑是一个重复的劳动,本文来尝试通过编写一个这样的插件,让插件来帮我们写代码,不管是有1个属性,还是有30个属性,都能在瞬间完成,开始吧!

2024-06-18 16:15:26 434

原创 idea插件开发之在项目右键添加菜单

本文看下如何在右键列表中增加菜单。

2024-06-17 11:05:23 410

原创 idea插件开发之实现设置信息持久化存储

在idea中设置的信息,我们重启idea后,这些信息还是在的,这其实是通过idea插件的持久化存储功能实现的,本文一起来看下如何实现。

2024-06-13 11:12:43 158

the-probe-plugin-1.0.zip

idea打印方法入参等信息插件,idea打印方法入参等信息插件,idea打印方法入参等信息插件,idea打印方法入参等信息插件,idea打印方法入参等信息插件,

2024-06-21

map2obj-idea-plugin-1.0.zip

map快捷转换为对象的idea插件,map快捷转换为对象的idea插件,map快捷转换为对象的idea插件,map快捷转换为对象的idea插件

2024-06-18

javaio-appendfile1709014272558.json

javaio-appendfile1709014272558.jsonjavaio-appendfile1709014272558.jsonjavaio-appendfile1709014272558.jsonjavaio-appendfile1709014272558.jsonjavaio-appendfile1709014272558.jsonjavaio-appendfile1709014272558.json

2024-02-27

elasticsearch-analysis-ik-7.1.0.zip

elasticsearch-analysis-ik-7.1.0.zipelasticsearch-analysis-ik-7.1.0.zipelasticsearch-analysis-ik-7.1.0.zipelasticsearch-analysis-ik-7.1.0.zip

2024-02-05

docker-compose (3).zip

docker-compose (3).zipdocker-compose (3).zipdocker-compose (3).zipdocker-compose (3).zipdocker-compose (3).zip

2024-01-31

FSCapture.zip

FSCapture.zipFSCapture.zipFSCapture.zipFSCapture.zipFSCapture.zip

2024-01-17

sentinel-降级熔断测试.jmx

sentinel-降级熔断测试.jmxsentinel-降级熔断测试.jmxsentinel-降级熔断测试.jmxsentinel-降级熔断测试.jmx

2024-01-10

sentinel-链路流控测试.jmx

sentinel-链路流控测试.jmxsentinel-链路流控测试.jmxsentinel-链路流控测试.jmxsentinel-链路流控测试.jmx

2024-01-09

sentinel-关联流控测试.jmx

sentinel-关联流控测试.jmxsentinel-关联流控测试.jmxsentinel-关联流控测试.jmx

2024-01-08

sentinel-直接流控测试.jmx

sentinel-直接流控测试.jmxsentinel-直接流控测试.jmxsentinel-直接流控测试.jmxsentinel-直接流控测试.jmx

2024-01-08

sentinel-182.zip

sentinel-182.zipsentinel-182.zipsentinel-182.zipsentinel-182.zipsentinel-182.zip

2024-01-08

JSONVue-master.zip JSONVue-master.zipJSONVue-master.zipJSONVue-m

JSONVue-master.zipJSONVue-master.zipJSONVue-master.zipJSONVue-master.zip

2023-12-08

sftp.zipsftp.zipsftp.zip

sftp server 安装包sftp server 安装包sftp server 安装包sftp server 安装包sftp server 安装包

2023-12-07

MicroSIP-3.19.22.exe

MicroSIP-3.19.22.exeMicroSIP-3.19.22.exeMicroSIP-3.19.22.exeMicroSIP-3.19.22.exeMicroSIP-3.19.22.exeMicroSIP-3.19.22.exe

2023-11-07

nacos-server-2.0.0.zip

nacos-server-2.0.0.zipnacos-server-2.0.0.zipnacos-server-2.0.0.zipnacos-server-2.0.0.zipnacos-server-2.0.0.zipnacos-server-2.0.0.zipnacos-server-2.0.0.zip

2023-10-11

Snipaste1.rar

Snipaste1.rarSnipaste1.rarSnipaste1.rarSnipaste1.rarSnipaste1.rarSnipaste1.rarSnipaste1.rar

2023-04-06

ngrok.zip ngrok ngrok

ngrokngrokngrokngrokngrokngrokngrokngrokngrokngrok

2023-01-15

ingress.raringress.raringress.rar

ingress.raringress.raringress.raringress.raringress.raringress.raringress.rar

2023-01-14

Flannel.rar

k8s Flannel 网络插件 k8s Flannel 网络插件 k8s Flannel 网络插件 k8s Flannel 网络插件

2023-01-09

coredns.rar

coredns.rarcoredns.rarcoredns.rarcoredns.rarcoredns.rar

2023-01-09

pause.rarpause.rarpause.rar

pause.rarpause.rarpause.rarpause.rarpause.rar

2023-01-09

kube-scheduler.rar

kube-scheduler.rarkube-scheduler.rarkube-scheduler.rarkube-scheduler.rar

2023-01-09

kube-proxy.rar

kube-proxy.rarkube-proxy.rarkube-proxy.rarkube-proxy.rar

2023-01-09

kube-controller-manager.rar

kube-controller-manager.rarkube-controller-manager.rarkube-controller-manager.rarkube-controller-manager.rarkube-controller-manager.rar

2023-01-09

kube-apiserver.rar

kube-apiserver.rarkube-apiserver.rarkube-apiserver.rarkube-apiserver.rar

2023-01-09

etcd.raretcd.rar

etcd.raretcd.raretcd.raretcd.raretcd.rar

2023-01-09

coredns.tar

coredns.tarcoredns.tarcoredns.tarcoredns.tarcoredns.tarcoredns.tarcoredns.tar

2023-01-09

redistimeseries.so redistimeseries.so

redistimeseries.so redistimeseries.so redistimeseries.so redistimeseries.so redistimeseries.soredistimeseries.so redistimeseries.so redistimeseries.so redistimeseries.so redistimeseries.

2022-11-09

redis-3.2.2.gem redis-3.2.2.gem redis-3.2.2.gem

redis-3.2.2.gemredis-3.2.2.gemredis-3.2.2.gemredis-3.2.2.gemredis-3.2.2.gemredis-3.2.2.gem

2022-10-20

redis-linux-3.2.0.rar redis-linux-3.2.0.rar

redis 3.2 linnuxredis 3.2 linnuxredis 3.2 linnuxredis 3.2 linnuxredis 3.2 linnuxredis 3.2 linnuxredis 3.2 linnux

2022-10-20

google-access-helper2022-main.zip

google-access-helper2022-main.zipgoogle-access-helper2022-main.zipgoogle-access-helper2022-main.zipgoogle-access-helper2022-main.zipgoogle-access-helper2022-main.zipgoogle-access-helper2022-main.zipgoogle-access-helper2022-main.zipgoogle-access-helper2022-main.zipgoogle-access-helper2022-main.zip

2022-09-23

MyFlash-master.zip

MyFlash MyFlash MyFlashMyFlashMyFlashMyFlashMyFlashMyFlashMyFlashMyFlashMyFlashMyFlashMyFlashMyFlashMyFlashMyFlashMyFlashMyFlashMyFlashMyFlashMyFlashMyFlashMyFlashMyFlash

2022-08-23

MobaXterm_Installer_v22.0.zip

MobaXterm_InstallerMobaXterm_InstallerMobaXterm_InstallerMobaXterm_InstallerMobaXterm_InstallerMobaXterm_InstallerMobaXterm_InstallerMobaXterm_InstallerMobaXterm_Installer

2022-06-20

percona-toolkit-3.2.0.tar.gz

percona pt-killpercona pt-killpercona pt-killpercona pt-killpercona pt-killpercona pt-killpercona pt-killpercona pt-killpercona pt-killpercona pt-killpercona pt-kill

2022-06-06

arthas-boot-1.jar

arthasarthasarthasarthasarthasarthasarthasarthasarthasarthasarthasarthasarthasarthasarthasarthasarthasarthasarthasarthasarthasarthasarthasarthasarthasarthasarthasarthasarthasarthasarthasarthasarthasarthasarthasarthasarthasarthasarthasarthasarthasarthasarthas

2022-04-20

java 测试jvm工具可执行加入

java 测试jvm工具可执行加入java 测试jvm工具可执行加入java 测试jvm工具可执行加入java 测试jvm工具可执行加入java 测试jvm工具可执行加入java 测试jvm工具可执行加入java 测试jvm工具可执行加入java 测试jvm工具可执行加入java 测试jvm工具可执行加入java 测试jvm工具可执行加入java 测试jvm工具可执行加入java 测试jvm工具可执行加入java 测试jvm工具可执行加入java 测试jvm工具可执行加入

2022-03-31

apache-jmeter-5.2.1--.zip

apache-jmeter-5.2.1--.zip

2021-12-17

kafka_2.11-2.2.1--.zip

kafka_2.11-2.2.1--.zip

2021-12-14

jdk8API文档.zip

jdk

2021-12-12

Snipaste.zip

Windows截屏软件

2021-12-12

空空如也

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

TA关注的人

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