240 发简信
IP属地:黑龙江
  • Netty

    NIO相较于普通BIO的几个特征1.BIO 1个主线程轮询是否有新连接,新连接进来后开新线程。总数1+N。NIO 1个主线程轮询新连接,新连接来...

  • Resize,w 360,h 240
    log4j并发打印日志导致线程Block问题排查记录

    现象:对固定接口测试环境做压测。qps保持在单机37左右,各服务未出现异常。但是压测持续30分钟左右时,突然出现大量线程block告警。 查看阻...

  • Resize,w 360,h 240
    缓存

    缓存类别 1.线程级缓存:ThreadLocal适用场景:同个线程内需要多次请求耗时接口,例如需要根据权限范围查询具体数据,多次查权限。2.单机...

  • Redis

    1.键过期清理策略: 1.定时清理:创建key的时候开启异步线程轮询,等时间到了之后清理key。2.懒惰清理:不清理。查询的时候,判断key是否...

  • GC

    1.年轻代 Eden,S0,S1 。对象到一定年龄(minor gc次数)晋升到老年代2.老年代3.永久代,方法区,MetaSpace。存放类...

  • 动态代理JDK,Cglib

    1.JDK动态代理 通过接口+反射实现代理1.根据接口创建代理类的字节码文件2.使用ClassLoader将字节码文件加载到JVM3.创建代...

  • 分布式锁

    1.互斥2.不会死锁。3.同个线程加锁解锁。 https://www.hollischuang.com/archives/1716https:/...

  • Resize,w 360,h 240
    MQ

    1.优点: 1.解耦2.异步3.削峰 2.MQ如何解决消息丢失问题 1.生产者丢失。1.1RocketMq在往消息队列中发送消息的时候,会开启一...

  • Resize,w 360,h 240
    java类加载

    1.类加载器1.BootStrapClassLoader 启动类加载器。加载rt.jar 以及 java. 开头的类。2.ExtClassLo...