"In-depth understanding of Java Virtual machines: JVM advanced features and best practices" PDF download Link:
https://u253469.pipipan.com/fs/253469-230062566
Content Introduction
As a Java programmer, have you ever wanted to dig deeper into the Java virtual machine, but have been shut out of its complexity and profundity? It doesn't matter, "in-depth understanding of Java Virtual machines: JVM advanced features and best practices" is a great way to lead you through the mysteries of Java virtual machines in a relaxed way. "In-depth understanding of Java Virtual machines: JVM advanced features and best practices" is the only published in recent years in China and Java Virtual Machine related monographs, is the only one at the same time from the core theory and practical use of these two angles to explore the Java Virtual Machine Works, not only theoretical analysis is thorough, And the typical cases and best practices contained in the book are also very instructive.
The book is divided into five parts. The first part introduces the past, present and future of the entire Java technology system from a macroscopic perspective, and how to compile a openjdk7 independently, which is helpful for understanding the later content. The second part explains the automatic memory management of the JVM, including the partition principle of the memory area of the virtual machine and the causes of various memory overflow anomalies, the common garbage collection algorithm and the characteristics and working principle of the garbage collector, and the principle and usage of the common virtual machine monitoring and debugging tools. The third part analyzes the execution subsystem of virtual machine, including the file structure of class and how to store and access the data in class, the class creation mechanism of virtual machine and the function of class loader and its meaning to virtual machine, the execution engine of virtual machine bytecode and the memory structure involved in implementing code. The forth part explains the compiler and code optimization of the program, expounds the principle of the generic type, the automatic packing and unpacking, the conditional compilation and so on, and explains the hot spot detection method of the virtual machine, the instant compiler of the hotspot, the compilation trigger condition, and how to observe and analyze the JIT compiled data and results from outside the virtual machine. Part five discusses the principle of efficient concurrency in Java, including the structure and operation of the JVM memory model, the embodiment of atomicity, visibility and order in the Java memory model, the rules and use of the first occurrence principle, and the implementation principle of threading in the Java language. The virtual machine implements a series of lock optimization measures for efficient concurrency.
"In-depth understanding of Java Virtual machines: JVM advanced features and best practices" is for all Java programmers, system tuning engineers, and system architects to read.
Introduction to Translators
Zhou Zhiming, a senior Java technology expert, has in-depth research on Java EE Enterprise Application development, OSGi, Java Virtual machine and workflow, and has accumulated rich experience in a great deal of practice. Especially proficient in Java virtual machines, writing a large number of JVM-related classic articles, by the major technical community to reprint, is iteye and other technology community recognized Java Virtual Machine leader in one of the figures. Currently, far-Light Software Co., Ltd. Platform development manager and Platform architect, has participated in the National Grid, Southern power grid and other national large-scale ERP project platform architecture work, the software system architecture also has a deep understanding and experience.
Directory
Objective
Thank
The first part goes near Java
1th Chapter Approaching JAVA/2
1.1 Overview/
2
1.2 Java technology System/3
1.3 Java History/5
1.4 Outlook for the future of Java Technology/9
1.4.1 Modular/
9
1.4.2 Mixed Language/
9
1.4.3 Multi-core parallel/
11
1.4.4 further enrich the grammar/
12
1.4.5 64-bit virtual machine/13
1.5 Combat: Build your own JDK/
13
1.5.1 Get JDK source code/13
1.5.2 System Requirements/
14
1.5.3 Building a compilation environment/
15
1.5.4 Preparing dependencies/
17
1.5.5 to compile/
18
1.6 Summary of this chapter/
21st
Part two automatic memory management mechanism
2nd. Java memory area and memory overflow exception/24
2.1 Overview/
24
2.2 Run-time data region/
25
2.2.1 Program Counter/
25
2.2.2 Java Virtual machine stack/26
2.2.3 Local Method Stack/
27
2.2.4 Java Heap/27
2.2.5 Method Area/
28
2.2.6 running a constant-rate pool/
29
2.2.7 Direct Memory/
29
2.3 Object Access/
30
2.4 Combat: OutOfMemoryError Anomalies
/32
2.4.1 Java Heap Overflow/32
2.4.2 Virtual machine stack and local method stack Overflow/
35
2.4.3 Run constant Pool overflow/
38
2.4.4 Method Area Overflow/
39
2.4.5 Native Direct Memory overflow/
41
2.5 Summary of this chapter/
42
The 3rd Chapter garbage collector and memory allocation policy
/43
3.1 Overview/
43
3.2 Object is dead? /
44
3.2.1 Reference Counting algorithm/
44
3.2.2 Search Algorithms/
46
3.2.3 again talk about quoting/
47
3.2.4 Survive or die? /
48
3.2.5 Recovery Method Area/
50
3.3 Garbage Collection algorithm/
51
3.3.1 Tag-Clear algorithm/51
3.3.2 Copy Algorithm/
52
3.3.3 Labeling-Sorting algorithm/54
3.3.4 Generational Collection algorithm/
54
3.4 Garbage collector/
55
3.4.1 Serial collector/56
3.4.2 Parnew Collector/57
3.4.3 Parallel
Scavenge collector/
59
3.4.4 Serial
Old Collector/
60
3.4.5 Parallel
Old Collector/
61
3.4.6 CMS collector/61
3.4.7 G1 Collector/64
3.4.8 Garbage Collector Parameters Summary/
64
3.5 Memory allocation and recovery strategy/
65
3.5.1 Object First in Eden Assignment/66
3.5.2 large objects directly into the old age/
68
3.5.3 long-lived objects will enter the old age/
69
3.5.4 Dynamic Object Age judgement/
71
3.5.5 Space Allocation guarantee/
73
3.6 Summary of this chapter/
75
4th. Virtual machine performance monitoring and fault handling tools
/76
4.1 Overview/
76
4.2 JDK command-line tools/76
4.2.1 JPS: Virtual Machine Process Health Tool/79
4.2.2 Jstat: Virtual Machine Statistics monitoring tool
/80
4.2.3 Jinfo:java Configuration Information tool/82
4.2.4 Jmap:java Memory Imaging Tool/82
4.2.5 jhat: Virtual machine heap dump snapshot analysis tool
/84
4.2.6 Jstack:java Stack Trace Tool/85
4.3 JDK visualization Tool/87
4.3.1 Jconsole:java monitoring and management Console/88
4.3.2 VisualVM: Multi-fault handling tool
/96
4.4 Summary of this chapter/
105
The 5th chapter of tuning case analysis and actual combat
/106
5.1 Overview/
106
5.2 Case Studies/
106
5.2.1 Program deployment Strategy on high-performance hardware/
106
5.2.2 memory overflow due to inter-cluster synchronization
109
5.2.3 overflow error due to out-of-heap memory
110
5.2.4 external command causes slow system/
112
5.2.5 Server JVM process crashes/113
5.3 Combat: Eclipse Run speed tuning/114
5.3.1 Pre-tuning program run status/
114
5.3.2 Upgrading JDK
1.6 Performance changes and compatibility issues/
117
5.3.3 optimization of compile time and class load time
122
5.3.4 Adjust memory settings to control garbage collection frequency/
126
5.3.5 Select Collector to reduce latency/
130
5.4 Summary of this chapter/
133
...
"In-depth understanding of Java Virtual machines: JVM advanced features and best practices" PDF download Link:
https://u253469.pipipan.com/fs/253469-230062566
For more books and recommended ebooks, please pay attention to:
http://zhaozhiyong.cn
"Deep understanding of Java Virtual machines: JVM advanced features and best practices" PDF download