The JVM related

Thread 1.

2.JVM memory area

2.1 Program counter 2.2 Virtual Machine Stack 2.3 Local Method stack 2.4 Heap 2.5 Method area

3.JVM runtime memory

3.1 Cenozoic era 3.2 Old age 3.3 Permanent generation

4. Garbage collection and algorithm

4.1 How to Determine Garbage 4.2 Tag Cleaning Algorithm 4.3 Copy Algorithm 4.4 Tag Collation Algorithm 4.5 Generational Collection Algorithm

5. Reference types in Java 4

5.1 Strong Reference 5.2 Soft Reference 5.3 Weak Reference 5.4 Virtual Reference

6.GC generation collection algorithm VS partition collection algorithm

6.1 Generational Collection Algorithm 6.2 Zone Collection Algorithm

7.GC garbage collector

7.1 Serial collector 7.2 Parnew collector 7.3 Parallel Scavenge collector 7.4 Serial Old collector 7.5 Parallel Old collector 7.6CMS collector



8.Java IO/NIO

8.1 Blocking I/O model 8.2 Non-blocking I/O model 8.3 Multiplexing I/O model 8.4 New driver I/O model 8.5 Asynchronous I/O model 8.6 Java I/O package 8.7 Java NIO

9.JVM class loading mechanism

9.1 Loading 9.2 Validating 9.3 Preparing 9.4 Parsing 9.5 Symbolic Reference 9.6 Direct reference 9.7 Class Constructor 9.8 Parent delegate 9.9OSGI





Multithreaded concurrency correlation

1.Java concurrent knowledge base

2.Java thread implementation/creation

2.1 Inheriting thread class 2.2 Implementing runnable interface 2.3 Thread pool-based approach

3. Thread lifecycle (state)

3.1 New Status


3.2 Ready State


3.3 Operating Status


3.4 Blocking Status


3.5 Thread Death

4. Four ways to terminate a thread

4.1 Ending normal Operation 4.2 Exiting a Thread with an Exit flag 4.3 Ending a thread with interrupt 4.4 Stopping a thread

5. What is the difference between sleep and wait

6. Start is different from run

7.Java background threads

8. Java lock

8.1 Optimistic locks 8.2 Pessimistic locks 8.3 Spin locks 8.4 Synchronize Synchronization locks 8.5 Reentrant locks (recursive locks) 8.6 Fair and Unfair Locks 8.7 Shared and Exclusive locks 8.8 Heavyweight locks 8.9 Lightweight locks





9.Java thread basic methods

9.1 Thread wait 9.2 Thread Sleep 9.3 Thread concession 9.4 Thread Interrupt 9.5 Thread wake up

10. Thread context switch

10.1 process


10.2 context


10.3 register


10.4 Program counter


10.5PCB “Switch Lock”

11. Synchronization locks and deadlocks

11.1 Synchronization Lock 11.2 Deadlock

12. Thread pool principles

12.1 Thread Reuse 12.2 Composition of a Thread Pool 12.3 Denial Policy

13.Java blocking queue principle

13.1 Main methods of blocking Queues 13.1 Blocking Queues in Java

14. The role of the volatile keyword (visibility, order, atomicity)

14.1 Variable Visibility 14.2 Base Reordering 14.3 Application Scenarios

15. Thread scheduling used in Java

16. Process scheduling algorithm

16.1 Finite scheduling algorithm


16.2 High priority first scheduling algorithm


16.3 Scheduling algorithm based on time slice

17. What is CAS (Compare and swap – Optimistic locking mechanism – lock spin)

17.1 Concepts and characteristics 17.2 Atomic packages 17.3ABA problems

18. What is AQS (Abstract Queue Synchronizer)

18.2 18.1 exclusive exclusive lock resources share, the Shared resource is 18.3 the realization of the synchronizer of ABA core 18.4 reentrantreadwritelock realize an exclusive lock and sharing in two ways







Spring related

1. The characteristics of the Spring

1.1 Lightweight 1.2 Inversion of Control 1.3 Aspect 1.4 Container 1.5 Framework collection

2.Spring core components

3. Common Spring modules

4. The Spring package

5.Spring common annotations

6. Third party integration of Spring

7. The Spring IOC principle

7.1 concept


7.2 Spring Container High-level Diagram Recognition


7.3IOC Container implementation

8.Spring Bean lifecycle

8.1 Instantiation 8.2IOC Dependency Injection 8.3 SetBeanname Implementation 8.4 BeanFactoryAware Implementation 8.5 Destroy Automatic Expiration Cleanup 8.6 Destroy-method Self-configured cleanup

9. Spring AOP principle

9.1 Concepts 9.2AOP Core Concepts 9.3 TWO PROXY methods of AOP





10. Spring boot principle

10.1 Creating a Standalone Spring Application 10.2 Embedded Tomcat Without deploying a WAR file 10.3 Simplifying Maven Configuration 10.4 Automatically Configuring Spring

11. The JPA principle

11.1 Transactions 11.2 Local Transactions 11.3 Distributed Transactions 11.4 Two-phase Commit

12. Mybatis cache

12.1 Principle of Level-1 Cache 12.2 Principle of Level-2 Cache in MyBatis

13. Tomcat architecture







Microservice correlation

1. Service registration discovery

1.1 Client Registration 1.2 Third-party Registration 1.3 Client Discovery 1.4 Server Discovery

2. API gateway

2.1 Request Forwarding 2.2 Corresponding Merge 2.3 Protocol Conversion 2.4 Data Conversion 2.5 Security Authentication

3. Configure the center

3.1 ZooKeeper Configuration Center 3.2 Configuring Data categories in the ZooKeeper Center

4. Event Scheduling (Kafka)

5. Service Tracking (starter-sleuth)

Service fusion (Hystrix)

7. The API management







Database correlation

1. Storage engine

1.1 Concepts 1.2B+ Tree 1.3 Tokudb 1.4 MyLASm 1.5 Memory

Index of 2.

2.1 Common Index Principles 2.2 Limiting the number of indexes

3. Three paradigms of database

3.1 First paradigm 3.2 Second paradigm 3.3 Third paradigm





4. Stored procedures

5. The trigger

6. Database concurrency policy

6.1 optimistic locking


6.2 pessimistic locks


6.3 the timestamp

7. Database lock

7.1 Row-level Locks 7.2 table-level locks 7.3 page-level locks

8. Distributed lock based on Redis

9. Two-phase commit protocol

9.1 Preparations


9.2 Submission Phase


9.3 disadvantages

3 phase commit protocol

10.1 CANCOMMIT Phase 10.2 PreCOMMIT Phase 10.3 DOCOMMIT Phase

11.CAP

11.1 Consistency 11.2 Availability 11.3 Partition Tolerance



Reader benefit: Free material sharing! There are too many materials, more than 200 PDF pages in total, I will not present them all.

The last

Welcome to pay attention to my public number [programmer chasing wind], the article will be updated in it, sorting out the data will be placed in it.