小师妹学JVM之:JVM中的Safepoints

2020-07-08
阅读 3 分钟
1.2k
java程序员都听说过GC,大家也都知道GC的目的是扫描堆空间,然后将那些标记为删除的对象从堆空间释放,以提升可用的堆空间。今天我们会来探讨一下隐藏在GC背后的一个小秘密Safepoints。

小师妹学JVM之:cache line对代码性能的影响

2020-07-07
阅读 3 分钟
1.2k
读万卷书不如行万里路,讲了这么多assembly和JVM的原理与优化,今天我们来点不一样的实战。探索一下怎么使用assembly来理解我们之前不能理解的问题。

区块链系列教程之:比特币的问题

2020-07-06
阅读 4 分钟
2.3k
比特币网络是中本聪作为一个实验性的网络提出来并运行的。没想到的是这一个实验性质的网络,居然成了现在虚拟货币世界的龙头老大。这个结局估计是中本聪本人都没有想到过的。

JIT的Profile神器JITWatch

2020-07-05
阅读 3 分钟
1.9k
老是使用命令行工具在现代化社会好像已经跟不上节奏了,尤其是在做JIT分析时,使用LogCompilation输出的日志实在是太大了,让人望而生畏。有没有什么更加简便的方法来分析JIT日志呢?快来和小师妹一起来学习JITWatch吧。

深入理解编译优化之循环展开和粗化锁

2020-07-04
阅读 3 分钟
1.9k
之前在讲JIT的时候,有提到在编译过程中的两种优化循环展开和粗化锁,今天我们和小师妹一起从Assembly的角度来验证一下这两种编译优化方法,快来看看吧。

小师妹学JVM之:JIT中的PrintAssembly续集

2020-07-03
阅读 4 分钟
1.6k
上篇文章和小师妹一起介绍了PrintAssembly和PrintAssembly在命令行的使用,今天本文将会更进一步讲解如何在JDK8和JDK14中分别使用PrintAssembly,并在实际的例子中对其进行进一步的深入理解。

区块链系列教程之:比特币中的共识

2020-07-02
阅读 4 分钟
2.1k
在比特币的P2P网络中是怎么达成共识的呢?达成共识需要做哪些交易的校验呢?交易和区块是怎么传播到整个区块链网络的呢?看完这篇文章你就明白了。

小师妹学JVM之:逃逸分析和TLAB

2020-07-01
阅读 3 分钟
1.5k
逃逸分析我们在JDK14中JVM的性能优化一文中已经讲过了,逃逸分析的结果就是JVM会在栈上分配对象,从而提升效率。如果我们在多线程的环境中,如何提升内存的分配效率呢?快来跟小师妹一起学习TLAB技术吧。

一张PDF了解JDK9 GC调优秘籍-附PDF下载

2020-06-30
阅读 4 分钟
1.6k
今天我们讲讲JDK9中的JVM GC调优参数,JDK9中JVM的参数总共有2142个,其中正式的参数有659个。好像比JDK8中的参数要少一点。

小师妹学JVM之:JIT中的PrintAssembly

2020-06-29
阅读 3 分钟
1.3k
小师妹:F师兄,上次你给我介绍了java中的字节码,还有JIT中的LogCompilation和PrintCompilation的用法。虽然都非常有用,但是能不能更进一步,让我能以机器的眼光来看待JVM的执行?

揭秘!中国人一定要知道的北斗卫星系统

2020-06-28
阅读 5 分钟
2.3k
简介 6月23日9时43分,北斗系统的第五十五颗导航卫星,暨北斗三号最后一颗全球组网卫星成功发射。国人一片欢腾,为祖国的高科技而骄傲。 那么北斗系统到底是什么?北斗一号,二号三号有什么区别?它的主要作用和它是怎么工作的呢? 本文将会带大家一一揭秘。 北斗系统简介 北斗系统是中国为了国家安全和发展需要自研的全...

区块链系列教程之:比特币中的挖矿

2020-06-26
阅读 3 分钟
2.5k
上篇文章我们提到了,比特币是一个P2P网络,P2P网络中就有很多个节点,从P2P的定义来看,各个节点的地位是相同的,其实不然。比特币网络的节点各有作用。

小师妹学JVM之:java的字节码byte code简介

2020-06-25
阅读 3 分钟
3.6k
Byte Code也叫做字节码,是连接java源代码和JVM的桥梁,源代码编译成为字节码,而字节码又被加载进JVM中运行。字节码怎么生成,怎么查看字节码,隐藏在Byte Code背后的秘密是什么呢?快跟小师妹一起来看看吧。

小师妹学JVM之:JIT中的PrintCompilation

2020-06-24
阅读 3 分钟
2.4k
上篇文章我们讲到了JIT中的LogCompilation,将编译的日志都收集起来,存到日志文件里面,并且详细的解释了LogCompilation日志文件中的内容定义。今天我们再和小师妹一起学习LogCompilation的姊妹篇PrintCompilation,看看都有什么妙用吧。

八张图彻底了解JDK8 GC调优秘籍-附PDF下载

2020-06-23
阅读 3 分钟
7.7k
这么多参数带给我们的是对JVM的细粒度的控制,但是并不是所有的参数都需要我们自己去调节的,我们需要关注的是一些最常用的,对性能影响比较大的GC参数即可。

区块链系列教程之:比特币中的网络和区块链

2020-06-22
阅读 4 分钟
2.6k
比特币的底层就是区块链技术,区块链也是因为比特币而广为人知的。和其他的区块链技术相比,比特币的区块链有什么特征呢?作为去区块链的鼻祖,又有什么与众不同的特性呢?快来跟我们一起看看吧。

从印度兵力分布聊聊Mybatis中#和$的区别

2020-06-21
阅读 2 分钟
1.4k
简介 大家在使用Mybatis的过程中可能都会自己去写SQL语句,并且需要向SQL语句传入参数。 但是在Mybatis中,传参的语法有两种,#{name} 和 ${name},两者有什么区别呢?一起来看看吧。 举个例子 最近印度比较嚣张,频繁挑起边境冲突,那么印度是不是这么有底气呢? 我们看一下印度的兵力分布表: 其实印度军队还是挺强大的...

区块链系列教程之:比特币的钱包与交易

2020-06-20
阅读 5 分钟
2.1k
[toc] 简介 钱包在比特币中是做什么的呢?比特币的交易又有什么特点呢?怎么才能伪造比特币的交易呢?今天和大家一起学习一下比特币中的钱包和交易。 比特币密码学的基础 之前我们提到过比特币使用的并不是什么新技术,只是对于老的技术比如:P2P网络,分布式系统,密码学,共识算法的重新而又巧妙的应用。 在钱包和交易...

小师妹学JVM之:JIT中的LogCompilation

2020-06-19
阅读 4 分钟
1.3k
我们知道在JVM中为了加快编译速度,引入了JIT即时编译的功能。那么JIT什么时候开始编译的,又是怎么编译的,作为一个高傲的程序员,有没有办法去探究JIT编译的秘密呢?答案是有的,今天和小师妹一起带大家来看一看这个编译背后的秘密。

小师妹学JVM之:JDK14中JVM的性能优化

2020-06-18
阅读 4 分钟
1.4k
上一篇文章我们讲到了JVM为了提升解释的性能,引入了JIT编译器,今天我们再来从整体的角度,带小师妹看看JDK14中的JVM有哪些优化的方面,并且能够从中间得到那些启发。

小师妹学JVM之:深入理解JIT和编译优化-你看不懂系列

2020-06-17
阅读 4 分钟
1.8k
小师妹已经学完JVM的简单部分了,接下来要进入的是JVM中比较晦涩难懂的概念,这些概念是那么的枯燥乏味,甚至还有点惹人讨厌,但是要想深入理解JVM,这些概念是必须的,我将会尽量尝试用简单的例子来解释它们,但一定会有人看不懂,没关系,这个系列本不是给所有人看的。

小师妹学JVM之:GC的垃圾回收算法

2020-06-16
阅读 4 分钟
1.2k
JVM的重要性不言而喻了,如果把java的应用程序比作一辆跑车,那么JVM就是这辆车的发动机,没有它,java程序就成了空中楼阁,无根浮萍。而在JVM中有一块内存区域叫做运行时数据区域,存储了运行时所需要的所有对象,而Heap Area则是其中最大的一块。

小师妹学JVM之:JVM的架构和执行过程

2020-06-15
阅读 5 分钟
2.1k
JVM也叫Java Virtual Machine,它是java程序运行的基础,负责将java bytecode转换成为适合在各个不同操作系统中运行的机器代码并运行。今天我们和小师妹一起走进java的核心JVM,领略java在设计上的哲学。

小师妹学JavaIO之:用Selector来发好人卡

2020-06-14
阅读 7 分钟
1.1k
NIO有三宝:Buffer,Channel,Selector少不了。本文将会介绍NIO三件套中的最后一套Selector,并在理解Selector的基础上,协助小师妹发一张好人卡。我们开始吧。

小师妹学JavaIO之:NIO中那些奇怪的Buffer

2020-06-13
阅读 5 分钟
1.5k
妖魔鬼怪快快显形,今天F师兄帮助小师妹来斩妖除魔啦,什么BufferB,BufferL,BufferRB,BufferRL,BufferS,BufferU,BufferRS,BufferRU统统给你剖析个清清楚楚明明白白。

小师妹学JavaIO之:MappedByteBuffer多大的文件我都装得下

2020-06-12
阅读 4 分钟
4.2k
小师妹:F师兄,你有没有发现,最近硬盘的价格真的是好便宜好便宜,1T的硬盘大概要500块,平均1M五毛钱。现在下个电影都1G起步,这是不是意味着我们买入了大数据时代?

小师妹学JavaIO之:NIO中Channel的妙用

2020-06-11
阅读 5 分钟
1.6k
小师妹:F师兄,使用IO和NIO不就是为了让生活更美好,世界充满爱吗?让我等程序员可以优雅的将数据从一个地方搬运到另外一个地方。利其器,善其事,才有更多的时间去享受生活呀。

小师妹学JavaIO之:Buffer和Buff

2020-06-10
阅读 7 分钟
3.8k
小师妹在学习NIO的路上越走越远,唯一能够帮到她的就是在她需要的时候给她以全力的支持。什么都不说了,今天介绍的是NIO的基础Buffer。老铁给我上个Buff。

小师妹学JavaIO之:文件File和路径Path

2020-06-09
阅读 3 分钟
1.5k
小师妹:F师兄我有一个问题,java中的文件File是一个类可以理解,因为文件里面包含了很多其他的信息,但是路径Path为什么也要单独一个类出来?只用一个String表示不是更简单?

小师妹学JavaIO之:文件系统和WatchService

2020-06-08
阅读 5 分钟
1.3k
小师妹这次遇到了监控文件变化的问题,F师兄给小师妹介绍了JDK7 nio中引入的WatchService,没想到又顺道普及了一下文件系统的概念,万万没想到。