最新文章
-
JVM的内存分配、运行原理、回收算法机制
不管是BAT面试,还是工作实践中的JVM调优以及参数设置,或者内存溢出检测等,都需要涉及到Java虚拟机的内存模型、内存分配,以及回收算法机制等,这些都是必考、必会技能。 JVM内存模型 JVM内存模型可以分为两个部分,如下图所示,堆和方法区是所有线程共有的,而虚拟机栈,本地方法栈和程序计数器则是线程私有的。 1. 堆(Heap) 堆内存是所有线程共有的,可以分为两个部分:年轻代和老年代。下图中的…... -
深入详解JVM内存模型与JVM参数详细配置
JVM基本是BAT面试必考的内容,今天我们先从JVM内存模型开启详解整个JVM系列,希望看完整个系列后,可以轻松通过BAT关于JVM的考核。 BAT必考JVM系列专题 1.JVM内存模型 2.JVM垃圾回收算法 3.JVM垃圾回收器 4.JVM参数详解 5.JVM性能调优 JVM内存结构 由上图可以清楚的看到JVM的内存空间分为3大部分: 堆内存 方法区 栈内存 其中栈内存可以再细分为java虚拟…... -
从Java程序员进阶为架构师,全套16张图概括最全技能
如何从程序员进阶到架构师?今天完整的把我积累的经验和技能分享给大家! 作者:陈睿|优知学院创始人 数据结构 算法=程序 数据是一切能输入到计算机的信息总和,结构是指数据之间的关系,数据结构就是将数据及其之间的关系有效地存储在计算机中。 算法是指对特定问题求解步骤的一种描述,说白了就是解决问题的方法策略。 总而言之:数据结构 算法=程序。 语言掌握 任何一门开发语言都自己的语法,也有对应开发语言对应…... -
最全多线程经典面试题和答案
Java实现线程有哪几种方式? 1、继承Thread类实现多线程 2、实现Runnable接口方式实现多线程 3、使用ExecutorService、Callable、Future实现有返回结果的多线程 多线程同步有哪几种方法? Synchronized关键字,Lock锁实现,分布式锁等。 Runnable和Thread用哪个好? Java不支持类的多重继承,但允许你实现多个接口。所以如果你要继承…... -
互联网寒冬,程序员如何突破重围?我的3个建议
2018年,互联网寒冬、裁员成了我们的热词。 2019年,大佬们预言,没有最冷,只有更冷。 最近这两个月,有些小伙伴通过私信或评论给我留言: 工作几年了,感觉技术到了瓶颈期,怎么突破? 一线程序员该如何应对中年危机? 现在的工作得不到成长,跳槽又担心经济寒冬工作不好找,有什么建议吗? ...... 大家纷纷表达着对未来的不确定,我感受到了技术人的深深焦虑。 追本溯源,这种不确定和焦虑主要还是源…... -
深入剖析G1收集器、及回收流程、与推荐用例
金三银四马上到了,即将进入面试的高峰期。在BAT面试中,JVM基本都是必考的系列。你至少需要掌握JVM内存模型与JVM参数详细配置,JVM的4种垃圾回收算法、垃圾回收机制与总结,以及今天重点谈到的JVM垃圾回收算法的实现:JVM垃圾收集器。 我先从JVM收集器的发展过程谈起,然后再聚焦在G1收集器,从G1的内存模型,再到G1的回收流程,最后再谈谈G1的实际应用场景。 JVM垃圾收集器发展历程 JV…... -
分布式缓存全面详解(看这篇就够了)
分布式缓存已经成为了互联网架构的基石,其重要性不言而喻,而且大厂面试也是必考内容,本篇就重点来谈谈分布式缓存@mikechen为什么要使用分布式缓存高并发环境下,例如典型的淘宝双11秒杀,几分钟内上亿的用户涌入淘宝。这个时候如果访问不加拦截,让大量的读写请求涌向数据库,由于磁盘的处理速度与内存显然不在一个量级,服务器马上就要宕机。缓存可以将经常读取的数据存储在快速的内存中,从而避免了频繁访问慢速…... -
如何才能真正的提高自己,真正成为一名出色的架构师?
“ 有读者朋友给我留言,如何才能真正的提高自己,成为一名架构师,有学习各种语言的小伙伴。 这里我结合我的学习方法论,再结合我自己的经验,分享部分心得,希望对你有所帮助。 欢迎小伙伴留言给到你现在遇见的问题。 学会抓住问题的本质 如果你想成为一名架构师,你首先需要正确的看待架构师这个职位,哪怕你自己手动去查很多架构师的工作职责也好,至少对架构师这件事需要正确来看待。 一篇文章搞懂高级程序员、架构师、…...