标签:Java | Eddie'Blog
Java

Java

  • 面试常见基础题 - CAS

    面试常见基础题 - CAS

    [toc]目录CAS理论 (百度理论)CAS的意思是比较与交换(Compare And Swap),它是乐观锁的一种实现机制。什么是乐观锁?通俗的来说就是它比较乐观,每次在修改变量的值之前不认为别的线程会修改变量,每次都会尝试去获得锁,如果获取失败了,它也会一直等待,直到获取锁为止。说白了,它就是打

    查看全文
  • Java 解决方法区溢出

    Java 解决方法区溢出

    目录实战-方法区溢出方法区的组成示例代码-1示例代码-2方法区总结方法区溢出的场景避免方法区溢出目录实战-方法区溢出线程共享,用来存储被虚拟机加载的类型信息、常量、静态变量等方法区的组成大于等于JDK8堆静态变量字符串常量池元空间 (前身叫:持久代)类信息类的版本字段描述信息方法描述信息接口和父类等

    查看全文
  • Java 解决栈内存溢出

    Java 解决栈内存溢出

    目录实战-栈内存溢出Hotspot虚拟机如何运行更多线程? (经典面试题)针对Linux系统目录实战-栈内存溢出Java虚拟机规范如果线程请求的栈深度大于虚拟机所允许的最大深度,将抛出StackOverflowError如果虚拟机的栈内存允许动态扩展,当无法申请到足够内存时,将抛出OutOfMemo

    查看全文
  • Java 解决堆内存溢出

    Java 解决堆内存溢出

    目录实战-内存溢出实战-堆内存溢出堆内存溢出演示代码Eclipse Memory Analyzer 分析流程jvisualvm.exe 分析堆内存溢出目录实战-内存溢出堆内存溢出栈内存溢出方法区溢出直接内存溢出实战-堆内存溢出演示堆内存溢出代码,并且定位问题总结堆内存溢出的场景与解决方案分析 foo

    查看全文
  • Docker 容器的JAVA服务CPU使用率过高

    Docker 容器的JAVA服务CPU使用率过高

    目录1. Top1.1 进入容器1.2 查看进程号1.3 使用top -Hp 进程号查看异常线程、查看线程1.4 使用printf "%x\n" 线程号将异常线程号转化为16进制2. jstack2.1 jstack 错误记录目录使用 top + jstack,CPU过高问题定位

    查看全文
  • 模拟wait与notifyAll实现简单的生产者消费者模式

    模拟wait与notifyAll实现简单的生产者消费者模式

    目录代码片段一、产品实体类(代码:产品经理)二、存储产品类 (代号:公司)三、生产者(代号:程序员)三、消费者(代号:销售)四、入口(代号:客户)四、打印日志(代号:流水清单)说明目录代码片段一、产品实体类(代码:产品经理) * @author eddie.lee * @ClassName Prod

    查看全文
  • 一致性哈希算法 - 负载均衡

    一致性哈希算法 - 负载均衡

    目录一致性哈希算法 - 负载均衡CodeViewHow to test?参考资料目录一致性哈希算法 - 负载均衡CodeViewpackage com.example.springcloud.rules;import com.netflix.client.config.IClientConfig;i

    查看全文
  • SpringBoot集成Redis+Lua限流

    SpringBoot集成Redis+Lua限流

    目录Lua 初步认识Lua 特点IDEA插件安装Lua基本用法安装Lua脚本显示Hello Lua 演示限流脚本演示Redis预加载LuaRedis + Lua 限流组件封装 (一)基础版引用接口方式升级高大尚版自定义注解方式引用目录Lua 初步认识Lua 特点短小精干嵌套式开发、插件开发完美继承R

    查看全文
  • 分布式锁-进阶

    分布式锁-进阶

    分布式锁、Zookeeper分布式锁、Curator锁、Redisson分布式锁

    查看全文