- 博客(4)
- 收藏
- 关注
原创 从Token出发
读刘欣老师进行总结。很多年前,浏览器不需要保存用户浏览的记录,一切过程都随心所欲。直到后来一些特殊需求的出现,比如商品购买,浏览器需要记录登录过的用户还有用户浏览过的一些商品。从此浏览器要为每个用户创建一个会话(session)。同时会创建一个sessionId来唯一标识这个session。但是sessionId储存在服务端对服务器来说是个巨大的开销。为了减轻服务器负担, 通过验证to
2017-03-21 23:37:27 261
原创 了解Java类加载
本篇讲述Java类加载机制, 查阅相关博客和深入jvm书籍后进行总结和摘录。运行一个Java类时,首先由编译器javac将.java文件编译成.class文件。再加载到内存中,并放置在内存的方法区内,然后在堆中创建Java对象用于封装方法区内的数据结构。类的生命周期分为5个阶段。 加载、验证、准备、解析、初始化。1.通过一个类的全限定名来获取二进制字符流,将字节流代表的
2017-03-12 19:13:57 254
原创 初探JVM堆内存
java虚拟机在运行Java程序的时候会将其内存划分为好几个不同的数据区域。对大多数应用来说,堆内存应该是虚拟机管理的内存中最大的一块。java堆是可以被线程共享的区域,几乎所有的对象都在堆上进行内存空间的分配.堆内存被划分成3块: 1.永久代 JVM的方法区用于存放静态类型数据,该块对垃圾回收没有什么影响。2.新生代所有新建的对象首先存放在新生代,目的在与尽快回收
2017-03-05 09:34:11 387
原创 从程序的运行看硬盘、内存、CPU的关系
首先先看一个程序执行大概的过程。我们所看到的代码是人可以阅读的高级语言代码,但是计算机无法识别。 当一个程序被加载并执行执行的时候,文件就会被编译成计算机可读取的二进制文件。这时内存会去读取硬盘上的数据和指令并保存在内存中。由于CPU无法直接读取硬盘上的数据,大部分CPU的时间用于等待磁盘去读取数据。程序启动后,CPU中的控制器会从内存中读取数据和指令并进行解析,根据指令中
2017-02-26 10:29:52 6601
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人