JVM总体梳理 一、jvm体系总体概览 JVM体系总体分四大块:类的加载机制、jvm内存结构、GC算法 垃圾回收、GC分析 命令调优 这里画了一个思维导图,将所有的知识点进行了陈列,因为图比较大可以点击右键下载了放大查看。 二、类的加载机制 主要关注点:什么是类的加载、类的生命周期、类加载器、双亲委 ...
分类:
其他好文 时间:
2018-04-12 11:36:59
阅读次数:
203
最近面试阿里,面试官先是问我类加载的流程,然后问了个问题,能否在加载类的时候,对字节码进行修改 我懵逼了,答曰不知道,面试官说可以的,使用Java探针技术,能够实现 我查了一下关于探针技术的知识: 2. 基于javaAgent和Java字节码注入技术的java探针工具技术原理 图0-0:动态代理功能 ...
分类:
编程语言 时间:
2018-04-11 18:08:34
阅读次数:
480
jdbc的使用步骤 1、注册驱动2、获得连接3、获得语句执行者4、执行sql语句5、处理结果6、释放资源 1、注册驱动 因为在com.mysql.jdbc.Driver的实现类中,有一个静态代码块,即加载类的时候,会执行 静态代码块的代码。 2、获得连接 3、获得语句执行者4、执行sql语句5、处理 ...
分类:
数据库 时间:
2018-04-09 18:52:43
阅读次数:
175
Tomcat 部署Web应用 对Tomcat部署web应用的方式总结,常见的有以下四种: 1,使用控制台部署 访问Http://localhost:8080,并通过Tomcat Manager登录,进入部署界面即可。 2,利用Tomcat自动部署 将应用程序复制到Tomcat的 webapps路径下 ...
分类:
Web程序 时间:
2018-04-08 18:03:27
阅读次数:
177
这一章我们主要是对双亲委派机制进行详细讲解: 前面我们知道类加载有系统自带的3种加载器,也有自定义的加载器,那么这些加载器之间的关系是什么,已经在加载类的时候,谁去加载呢?这节,我们将进行讲解。 一、双亲委派机制 JVM的ClassLoader采用的是树形结构,除了BootstrapClassLoa ...
分类:
其他好文 时间:
2018-04-01 16:07:52
阅读次数:
183
官网地址: https://www.phalapi.net/ github 地址: https://github.com/phalapi/phalapi/tree/master-2x 1 composer 安装 phalapi2.0 (也可以去github 下载哦!) 入口文件。在项目目录publi ...
四、对象如何创建,布局?如何访问数据 对象的内存分配 对象的创建过程 Jvm读到new指令, 先去方法区(类常量池中)查看是否有对应的类符号,并检查该类是否被加载, if 加载,JVM为新生对象分配内存 else 加载类,为对象分配内存 内存分配完,JVM将内存空间值初始化为0值 对象头信息记录,这 ...
分类:
其他好文 时间:
2018-03-29 12:42:15
阅读次数:
221
1 Redis的分片技术 1.1 分片介绍 1.1.1 传统方式的问题 说明:如果采用单台redis时,如果redis出现宕机现象.那么会直接影响我们的整个的服务. 1.1.2 采用分片模式 说明:由一台redis扩展到多台redis.由多台redis共同为用户提供服务.并且每台redis中保存1/ ...
分类:
其他好文 时间:
2018-03-26 17:24:50
阅读次数:
180
以下基本不是原创,都是转载。 JVM运行时,首先需要类加载器(ClassLoader) 加载所需类的字节码,加载完毕交由执行引擎执行,执行过程中需要一段空间来存储数据(类比CPU与主存)。这段内存空间的分配和释放过程正是我们所关心的,称为运行时数据区。 运行时数据区 如上图所示,运行时数据区包括:程 ...
分类:
其他好文 时间:
2018-03-15 16:19:13
阅读次数:
214
namespace Home\Controller; 命名空间 根命名空间下的类所在的文件夹use Think\Controller; 使用 根命名空间下的controller类 顶头写写在php后面不加任何空格及代码 命名空间:虚拟目录目的:自动加载类初始命名空间:Library(公用的,为了保证 ...
分类:
其他好文 时间:
2018-03-15 11:14:28
阅读次数:
150