- 博客(10)
- 收藏
- 关注
原创 【每日3分钟技术干货 | 面试题 答案 | jvm篇(二)】
1. 说一下 JVM 的主要组成部分?及其作用?类加载器(ClassLoader)运行时数据区(Runtime Data Area)执行引擎(Execution Engine)本地库接口(Native Interface)组件的作用: 首先通过类加载器(ClassLoader)会把 Java 代码转换成字节码,运行时数据区(Runtime Data Area)再把字节码加载...
2020-01-04 11:38:34 876
原创 【每日3分钟技术干货 | 面试题 答案 | jvm篇(一)】
1. 说一下 JVM 有哪些垃圾回收算法?标记-清除算法:标记无用对象,然后进行清除回收。缺点:效率不高,无法清除垃圾碎片。标记-整理算法:标记无用对象,让所有存活的对象都向一端移动,然后直接清除掉端边界以外的内存。复制算法:按照容量划分二个大小相等的内存区域,当一块用完的时候将活着的对象复制到另一块上,然后再把已使用的内存空间一次清理掉。缺点:内存使用率不高,只有原来的一半。分代算...
2020-01-04 11:36:26 866
原创 面试总问的jvm调优到底是要干什么?
1. 压力测试的理解,xxx的性能10w/s,对你有意义么?没有那家卖瓜的会说自己家的不甜,同样,没有哪个开源项目愿意告诉你在对它条件最苛刻的时候压力情况是多少,一般官网号称给你看的性能指标都是在最理想环境下的,毫无参考意义。举个栗子,Redis官网压测的例子,256字节的读速度11w/s,写速度8.1w/s,都知道redis优点是多变的数据结构,string、List、hash、set、...
2020-01-04 11:34:24 1221
原创 Java:new一个对象的过程中发生了什么?
作者:沉默哥cnblogs.com/JackPn/p/9386182.htmljava在new一个对象的时候,会先查看对象所属的类有没有被加载到内存,如果没有的话,就会先通过类的全限定名来加载。加载并初始化类完成后,再进行对象的创建工作。我们先假设是第一次使用该类,这样的话new一个对象就可以分为两个过程:加载并初始化类和创建对象。一、类加载过程(第一次使...
2020-01-04 11:32:15 894
原创 【每日3分钟技术干货 | 面试题 答案 | 分布式锁篇(一)】
【每日3分钟技术干货 | 面试题 答案 | 分布式锁篇(一)】为什么要使用分布式锁?为了保证一个方法在高并发情况下的同一时间只能被同一个线程执行,在传统单体应用单机部署的情况下,可以使用Java并发处理相关的API(如ReentrantLcok或synchronized)进行互斥控制。但是,随着业务发展的需要,原单体单机部署的系统被演化成分布式系统后,由于分布式系统多线程、多进程并且分布在不同...
2020-01-04 11:30:15 916
原创 面试官:这简历一看就是包装过了!
面试官:这简历一看就是包装过了!Coodyhttps://my.oschina.net/hooker/blog/3014656前言在互联网极速膨胀的社会背景下,各行各业涌入互联网的IT民工日益增大。早在2016年,我司发布了Java、Ios工程师的招聘信息,就Java工程师单个岗位而言,日收简历近200份,Ios日收简历近一千份。没错,这就是当年培训机构对Ios工程师这个岗...
2020-01-04 11:28:11 1444
原创 面试官问我:谈谈对Java GC的了解?回答完让我回家等消息....
面试官问我:谈谈对Java GC的了解?回答完让我回家等消息....JVM的运行数据区首先我简单来画一张 JVM的结构原理图,如下。我们重点关注 JVM在运行时的数据区,你可以看到在程序运行时,大致有5个部分。1.方法区不止是存“方法”,而是存储整个 class文件的信息,JVM运行时,类加载器子系统将会提取 class文件里面的类信息,并将其存放在方法区中。例如类的名称、类的类型...
2020-01-04 11:25:51 916
原创 史上最全Nginx配置优化
一、一般来说nginx 配置文件中对优化比较有作用的为以下几项:1. worker_processes 8;nginx 进程数,建议按照cpu 数目来指定,一般为它的倍数 (如,2个四核的cpu计为8)。2. workercpuaffinity 00000001 00000010 00000100 00001000 00010000 00100000 01000000 10000000;为...
2020-01-04 11:17:03 1679
原创 nginx配置详解和原理
nginx配置详解和原理1.nginx的配置文件nginx配置文件的整体结构 ![复制代码](javascript:void(0); "复制代码")user nobody nobody; # 指定Nginx Worker进程运行用户以及用户组,默认由nobody账号运行,nobody 是系统用户,是一个不能登陆的帐号,一个特殊用途的用户 ID #启动进程,通常设置成和cpu的数...
2020-01-04 11:14:28 1311
原创 为了学好Java,我尝试了这 6 个方法
阅读本文大概需要 5 分钟。作者:黄小斜教练,我想学Java!怎么学Java,一个简单的命题,我自己也折腾了好几年,现在虽不能说是Java高手,但也算是小有所成,至少还不至于搞不懂一些基本概念和技术原理。从我大三那一年第一次在课堂上听老师讲JAVA课程到现在,也已经快4年的时间了,回顾我的学习历程,可以说是充满艰辛的,但又是不断在进步的,所谓道路是曲折的,前途是光明的,大抵就是这个意思吧。...
2019-10-30 00:31:38 324
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人