不一样的花朵
只要学不死,就往死里学.别人可以在智商上面压制自己,但是绝对不能在学习时间上面压制自己.
展开
-
史诗级详解面试中JVM的实战
内存溢出它是指程序在申请内存时,没有足够的内存空间供其使用,抛出OutOfMemory错误;比如申请了一个8MB空间,但是当前内存可用空间只有5MB,那么就是内存溢出;即:OutOfMemoryError,是指没有空闲内存,垃圾收集器回收后也不能提供更多的内存空间;内存泄露它是指程序运行后,没有释放所占用的内存空间,一次内存泄漏可能不会有很大的影响,但长时间的内存泄漏,堆积到一定程度就会产生内存溢出;原创 2023-03-25 18:44:24 · 736 阅读 · 0 评论 -
史诗级详解面试中JVM的运行时内存结构
加载进来的.class字节码文件、代码执行创建的对象、代码执行调用方法,方法中有变量等数据需要一个地方存放,所以JVM划分出了几个区域,用于存放这些信息;hotspot在JDK1.8之前,元空间就是原来的方法区(永久代);JVM里垃圾回收针对的是 新生代,老年代,还有元空间/方法区(永久代),不会针对方法的栈帧进行回收,方法一旦执行完毕,栈帧出栈,里面的局部变量直接就从内存里清理掉,也就是虚拟机栈不存在垃圾回收;原创 2023-03-25 18:06:42 · 727 阅读 · 0 评论 -
史诗级详解深入JMM
JMM1. JMM1.1 JMM 研究的到底是什么?JMM 即 Java 内存模型 A. Java 内存结构,如栈、堆? B. JVM 调优? C. JVM 垃圾回收机制? D. 多线程下 Java 代码的执行顺序,共享变量的读写?1.2 学习目标多线程下,读写共享变量会有哪些问题解决这些问题的钥匙 - Java 内存模型解决这些问题的手段 - 掌握同步方法更多安全问题与解决方法1.3 参考资料Java Language Specification Chapter原创 2021-10-17 18:44:39 · 229 阅读 · 0 评论 -
史诗级详解架构中的设计模式
1 认识设计模式问题:1.1 设计模式简介1、设计模式优点2、设计模式遵循原则3、设计模式分类1、单利模式使用2、单利模式多种实现方式3、单利模式内存消耗对比1、代理模式分析2、观察者模式分析3、模板模式分析4、适配器模式分析1、自定义框架,MVC+AOP2、使用单利模式、观察者模式、代理模式、适配器模式、工厂模式1、什么是设计模式2、设计模式什么时候使用3、使用设计模式有什么好处4、设计模式设计需要遵循哪些原则5、设计模式有哪些分类软件设计模式(Software D原创 2021-10-08 20:58:09 · 323 阅读 · 0 评论 -
史诗级详解大促高并发系统下JVM如何调优03
史诗级详解大促高并发系统下JVM如何调优031、JVM调优实战1.1、环境准备1.1.1、安装tomcat1.1.2、部署web项目1.1.3、测试项目1.2、压力测试1.2.1、添加gc日志相关参数1.2.2、创建测试用例1.2.3、初始测试1.2.4、GC日志解析1.3、调优一:调整内存1.4、调优二:更换G1收集器1.5、调优三:更换ZGC收集器1.6、调优建议1.7、PerfMa1.7.1、XXFox1.7.2、XSheepdog1.7.3、XElephant2、百亿级流量电商大促高并发系统下JVM原创 2021-10-17 10:06:49 · 242 阅读 · 0 评论 -
史诗级详解大促高并发系统下JVM如何调优02
史诗级详解大促高并发系统下JVM如何调优021、什么是垃圾回收?1.1、C/C++语言的垃圾回收1.2、Java语言的垃圾回收2、什么样的对象需要回收?2.1、引用计数法(了解)2.1.1、原理2.1.2、优缺点2.2、可达性分析算法(重点)2.3、对象的引用(了解)3、垃圾收集算法3.1、标记清除法3.2、标记压缩算法3.3、标记复制算法3.3.1、JVM中年轻代内存空间3.3.2、优缺点3.4、分代算法4、垃圾收集器4.1、串行垃圾收集器4.1.1、编写测试代码4.1.2、设置垃圾回收为串行收集器4.2原创 2021-10-17 08:13:37 · 215 阅读 · 0 评论 -
史诗级电商系统在双11大促活动下的架构体系
电商系统在双11大促活动下的架构体系1 背景与挑战1.1 背景介绍1.1.1 双11历程1.2 电商整体架构1.2.1 概述1.2.2 上层业务1.2.3 业务中台1.2.4 数据中台1.2.5 技术中台1.2.6 运维中台1.3 面临挑战1.3.1 考量维度1.3.2 内部瓶颈1.3.3 外部服务2 应对措施2.1 业务中台2.1.1 订单中心2.1.2 支付中心2.1.3 营销中心2.2 技术中台2.2.1 数据库优化2.2.2 缓存优化2.2.3 分流与限流2.2.4 服务降级2.2.5 安全性2.3原创 2021-10-08 08:04:13 · 563 阅读 · 0 评论 -
史诗级详解面试中JVM的加载
在类“加载”阶段,通过一个类的全限定名来获取描述该类的二进制字节流的这个动作的“代码”被称为“类加载器”(Class Loader),这个动作是可以自定义实现的;1、继承ClassLoader2、覆盖findClass(String name)方法 或者 loadClass() 方法;findClass(String name)方法 不会打破双亲委派;loadClass() 方法 可以打破双亲委派;原创 2023-03-25 09:28:20 · 699 阅读 · 0 评论 -
史诗级详解大促高并发系统下JVM如何调优01
1、架构师面对JVM调优,能做什么?架构师在做系统架构时,除了对于系统架构需要作出考虑外,在程序底层的jvm优化也是必然要考虑的事情,架构师需要考虑到我的系统如何才能更快,更稳定。如果发现系统出现一些莫名其妙的状况,比如:运行好好的服务突然停止运行了;有的应用突然报内存溢出异常终止了;服务器增加了硬件配置,但是服务的响应速度还是上不去;作为架构师的你,该如何解决?在做系统架构时,当我们面对高并发系统时jvm该如何调优?高吞吐的系统又该如何去对jvm做调优?本套课程就是带领你,深层次的学习j原创 2021-10-16 18:24:39 · 332 阅读 · 0 评论 -
史诗级详解面试中JVM的垃圾回收
标记-清除算法是最基础的收集算法,后续的很多垃圾回收算法是基于该算法而发展出来的,它分为‘ 标记 ’和‘ 清除 ’两个阶段;1、标记标记出所有需要回收的对象,在标记完成后,统一回收掉所有被标记的对象,也可以反过来,标记出所有存活的对象,在标记完成后,统一回收所有未被标记的对象,标记过程就是对象是否属于垃圾的判定过程,基于可达性分析算法判断对象是否可以回收;2、清除标记后,对所有被标记的对象进行回收;优点:基于最基础的可达性分析算法,实现简单,后续的收集算法都是基于这种思想实现的;缺点。原创 2023-03-25 18:38:53 · 928 阅读 · 0 评论