
Java
文章平均质量分 94
hosaos
^_^
展开
-
稳定性保障-如何做好一次核心链路压测
为什么要做压测互联网人做系统多多少少都听说过”全链路压测“一词,之前多是在网上看过,自己不曾实际操作、经历过。2020年底恰逢一次系统故障(流量突增导致系统异常),领导便问到:明年要开城了,系统能不能抗住现在3倍的流量?好家伙,这一问给我问住了,现在系统是跑的好好的,但是假设开城后(或者有大促啥的活动),流量变成现在5-10倍,你敢拍着脑袋说系统没问题?做开发这行的大多讲究眼见为实,告诉我你行,不如证明给我看你行,全链路压测就是证明你的系统调用链路稳定性的关键方法,因此首先要明确一点:压测的目的是在确保原创 2021-02-24 21:18:07 · 1341 阅读 · 3 评论 -
什么是FastJson中AutoType反序列化漏洞?
文章目录频繁出现的反序列化漏洞parse()及parseObject()AutoType及安全校验AutoType安全校验AutoType黑名单机制SafeMode安全机制攻击思路反序列化攻击模拟TemplatesImpl攻击调用链路攻击类Translet生成构造攻击JSON串攻击模拟写在最后频繁出现的反序列化漏洞最近公司的小伙伴们收到了一波安全工单,因为FastJson存在高危漏洞,要求将FastJson版本号升级到1.2.69及以上漏洞描述如下在Fastjson<=1.2.68的版本中,原创 2020-06-30 15:08:23 · 11215 阅读 · 6 评论 -
Java中的序列化机制
文章目录序列化的意义市面上的序列化技术序列化接口Serializable、ExternalizableSerializableExternalizableserialVersionUID静态变量是否会被序列化?Transient关键字序列化技术的缺点写在最后先抛出序列化相关几个面试问题,各位看看能否答得上来?Java序列化机制的意义是什么?你知道哪些序列化技术?如何自定义序列化内容?s...原创 2020-02-05 11:47:56 · 571 阅读 · 0 评论 -
Java中的泛型
文章目录什么是泛型泛型方法泛型类类型通配符泛型原理-类型擦除什么是泛型泛型提供了编译时类型安全检测机制,该机制允许程序员在编译时检测到非法的参数类型。泛型的本质是参数化类型,也就是说所操作的数据类型被指定为一个参数(如T,E)。泛型方法泛型方法能够在调用时接收不同的参数类型,根据传递给泛型方法的参数类型,合适的进行方法调用。举个例子,淘宝SDK调用时,请求的处理过程封装如下public...原创 2020-02-03 14:26:32 · 1589 阅读 · 0 评论 -
Java字节码技术(二)字节码增强之ASM、JavaAssist、Agent、Instrumentation
文章目录前言从AOP说起静态代理动态代理JavaProxyCGLIB字节码增强实现AOPASMJavaAssist运行时类加载Instrumentation接口JavaAgentPremainClass随JVM进程启动AgentClass以Attach方法注入Agent总结前言在上篇文章Java字节码技术(一)中已经介绍了Java中字节码相关的基础概念。我们知道,Java代码转换后的JVM指令...原创 2019-11-06 19:03:43 · 12570 阅读 · 6 评论 -
"程序包com.sun.tools.attach不存在"最简单粗暴的解决方案
最近在测试JavaAgent的Attach相关API,代码中有如下实现import com.sun.tools.attach.VirtualMachine;public String attachAgentTest(String pid) throws Exception { if (StringUtils.isEmpty(pid)) { return "pid ca...原创 2019-11-06 10:44:17 · 14579 阅读 · 4 评论 -
ThreadLocal、InheritableThreadLocal、TransmittableThreadLocal解析
文章目录使用场景ThreadLocalDemoThreadLocal存储结构关键APIset方法实现get方法实现缺点内存泄露父子线程传值问题InheritableThreadLocal线程上下文复制Demo缺点TransmittableThreadLocalDemo原理TransmittableThreadLocal#holderTransmittableThreadLocal#set捕获与重放...原创 2019-10-24 00:18:32 · 1830 阅读 · 1 评论 -
Java字节码技术(一)static、final、volatile、synchronized关键字的字节码体现
文章目录基本概念什么是字节码Javap命令查看字节码文件字节码文件解读static、final、volatile在字节码中的体现基本概念static:static修饰的变量被所有类实例共享,静态变量在其所在类被加载时进行初始化final:final修饰的变量不可修改(基本类型值不能修改,引用类型引用不可修改),final修饰的方法,不可重写、不可继承volatile:volatile修饰的...原创 2019-09-23 19:25:16 · 3617 阅读 · 3 评论