茂展的分享博客

JVM

深入学习JVM学习总结

按照java技术关注的重点业务领域来划分,java技术体系可以划分为4个平台

  • Java Card: 支持一些Java小程序( Applets) 运行在小内存设备(如智能卡)上的平台。
  • Java ME (Micro Edition): 支持Java程序运行在移动终端(手机、PDA). 上的平台,对Java API有所精简,并加入了针对移动终端的支持,这个版本以前称为J2ME。
  • JavaSE(StandardEdition):支持面向桌面级应用(如Windows下的应用程序)的Java平台,提供了完整的Java核心API,这个版本以前称为-J2SE。
  • Java EE ( Enferprise Edition) :支持使用多层架构的企业应用(如ERP、CRM应用)的Java平台,除了提供Java SE API外,还对其做了大量的扩充并提供了相关的部署支持,这个版本以前称为J2EE。

HotSpot VM

是SunJDK和OPenJDK中所带的虚拟机,也是目前使用最广泛的虚拟机,看HotSpot名字就知道,具有基于计数器热点代码探测能力,通过执行计数器找出最具有编译价值的代码,然后通知JIT编辑器以方法为单位进行编译。

多核并行

CPU硬件从当初的高频率到现在的多核心,软件也开始关注编程的并行.
jdk1.5开始引入java.util.concurrent包实现一个粗粒度的并发框架。在jdk1.7加入了的java.util.concurrent.forkjoin包是对这个框架的一次重要扩充。
Fork/Join模式是处理并发编程的一个景点方法,虽然不能解决所有的问题,但是在此模式的使用范围之内,能够轻松的利用多个cpu核心提供的计算资源来协作完成一个负责的计算任务。通过Fork/Join模式,我们能够更加顺畅的过渡到多核时代

OPenJDK的子项目Sumatra,目前显卡的计算运算、并行能力已经远远超过CPU。Sumatra项目就是为java提供使用GPU和APU运算能力的工具。
在JDK外围,有专门满足计算需求的计算框架,如Apache的Hadoop Map/Reduce.这个是一个简单易懂的并行框架,能够运行在由上千个商用机器组成的大型集群上,并且能以一种可靠的容错方式并行处理TB级别的数据集

PV: 页面浏览量,通常是衡量一个网络新闻频道或者网站甚至一条网络新闻的主要指标

Java堆区的内存大小设置还需要依赖于具体的操作系统平台

导致系统瓶颈的计算资源

明天继续学习总结…

------本文结束感谢阅读------
🐶 您的支持将鼓励我继续创作 🐶