Alibaba technical expert talks: Java architect must know the list of knowledge, how to make you technically improve the harvest of the interview

Regarding programmers, in addition to doing projects to improve their own skills, there is also a way to improve their professional skills: more! Look! book!

  • The editor compiled a core knowledge of the Java Advanced Architect’s Road, which is also a knowledge point that the interviewer must ask during the interview. The chapter also includes a lot of knowledge points, including basic knowledge, Java collections, JVM, and more. Thread concurrency, spring principle, microservices, Netty and RPC, diary, design pattern, database, distributed cache, data structure, etc.

Due to the fact that there are too many details, only some chapters of knowledge points have been edited. Under the rough introduction, each chapter has more detailed content! The following is the chapter list. Due to the length of the headline, the detailed explanation on the catalog cannot be listed one by one. At the end of the article, there is a detailed explanation of all the following chapters.

JAVA basics

  1. JAVA abnormal classification and treatment
  2. Anomaly classification
  3. Exception handling
  4. The difference between Throw and throws
  5. JAVA reflection
  6. Dynamic language
  7. The concept of reflection mechanism (all the attributes and methods of the class are known in the running state)
  8. Java reflection API
  9. Steps to use reflection (obtain Class object, call object method)
  10. 3 ways to get the Class object
  11. Two ways to create objects
  12. JAVA annotation
  13. JAVA inner class
  14. JAVA generic
  15. JAVA serialization (creating reusable Java objects)
  16. JAVA copy

JAVA collection

  1. Interface inheritance and implementation
  2. List
  3. ArrayList (array)
  4. Vector (array implementation, thread synchronization)
  5. LinkList (linked list)
  6. Set
  7. HashSet(Hash表)
  8. TreeSet (binary tree)
  9. LinkHashSet(HashSet+LinkedHashMap)
  10. Map
  11. HashMap (array + linked list + red-black tree)
  12. JAVA7 implementation
  13. JAVA8 implementation
  14. ConcurrentHashMap
  15. Segment
  16. Thread safety (Segment inherits ReentrantLock to lock)
  17. Parallelism (default 16)
  18. HashTable (thread safety)
  19. TreeMap (sortable)
  20. LinkHashMap (record insertion order)

JAVA multithreaded concurrency

  1. JAVA Concurrent Knowledge Base
  2. JAVA thread implementation / creation method
  3. 4 types of thread pools
  4. Thread life cycle (state)
  5. 4 ways to terminate threads
  6. The difference between sleep and wait
  7. The difference between start and run
  8. JAVA background thread
  9. JAVA lock
  10. Basic thread method
  11. Thread context switch
  12. Synchronization and deadlock
  13. Principle of Thread Pool
  14. JAVA blocking queue principle
  15. Usage of CyclicBarrier, CountDownLatch, Semaphore
  16. The role of volatile keyword (variable visibility, prohibit reordering)
  17. How to share data between two threads
  18. ThreadLocal role (thread local storage)
  19. The difference between synchronized and ReentrantLock
  20. ConcurrentHashMap
  21. Thread scheduling used in Java
  22. Process scheduling algorithm
  23. What is CAS (compare and exchange-optimistic locking mechanism-lock spin)
  24. What is AQS (Abstract Queue Synchronizer)

JVM

  1. Thread
  2. JVM memory area
  3. JVM runtime memory
  4. Garbage collection and algorithms
  5. Four reference types in JAVA
  6. GC generational collection algorithm VS partition collection algorithm
  7. GC garbage collector
  8. JAVA IO / NIO
  9. JVM class loading mechanism

Spring principle

  1. Spring features
  2. Lightweight
  3. Inversion of Control
  4. Face-to-face
  5. container
  6. Frame collection
  7. Spring core components
  8. Spring common modules
  9. Spring main package
  10. Spring common annotations
  11. Spring IOC principle
  12. Spring APO principle
  13. Spring MVC principle
  14. Spring Boot principle
  15. JPA principle
  16. Mybatis cache
  17. Tomcat architecture

Microservice

  1. Service registration discovery
  2. Client Registration (zookeeper)
  3. Third party registration (independent service Registrar)
  4. Client discovery
  5. Server discovery
  6. Consul
  7. Eureka
  8. SmartStack
  9. Etcd
  10. API gateway
  11. Request forwarding
  12. Response merge
  13. Protocol conversion
  14. Data conversion
  15. safety certificate
  16. Configuration Center
  17. zookeeper configuration center
  18. Configuration center data classification
  19. Event scheduling (kafka)
  20. Service tracking (starter-sleuth)
  21. Service Fuse (Hystrix)
  22. Hystrix circuit breaker mechanism
  23. API management

Netty 与RPC

  1. Netty principle
  2. Netty high performance
  3. Multiplexed communication
  4. Asynchronous communication NIO
  5. Zero copy (DIRECT BUFFERS uses off-heap direct memory)
  6. Memory pool (a buffer reuse mechanism based on the memory pool)
  7. Efficient Reactor threading model
  8. Lock-free design, thread binding
  9. High-performance serialization framework
  10. Netty RPC implementation
  11. Key technology
  12. Core process
  13. Message codec
  14. Communication process
  15. RMI implementation
  16. Implementation steps
  17. Protoclol Buffer
  18. Thrift

Distributed cache

  1. Cache avalanche
  2. Cache penetration
  3. Cache warm-up
  4. Cache update
  5. Cache degradation

The internet

  1. 7-layer network architecture
  2. TCP/IP principle
  3. Network Access Layer
  4. Internet Layer
  5. Transport layer (Tramsport Layer-TCP/UDP)
  6. Application Layer
  7. TCP three-way handshake/four waved hands
  8. HTTP principle
  9. Transmission process
  10. HTTP status
  11. HTTPS
  12. CDN principle
  13. Distribution service system
  14. Load balancing system
  15. Management system

Log

  1. Slf4j
  2. Log4j
  3. LogBack
  4. Logback advantages
  5. ELK

Zookeeper

  1. Zookeeper concept
  2. Zookeeper role
  3. Leader
  4. Follower
  5. Observer
  6. ZAB agreement
  7. Transaction number Zxid (transaction request counter + epoch)
  8. epoch
  9. The Zab protocol has two modes-recovery mode (primary selection) and broadcast mode (synchronization)
  10. ZAB agreement 4 stages
  11. Leader election (election stage-elect a quasi-Leader)
  12. JAVA implementation of ZAB protocol (FLE-discovery phase and synchronization are merged into Recovery Phase (recovery phase))
  13. Voting mechanism
  14. Working principle of Zookeeper (atomic broadcast)
  15. Znode has four types of directory nodes

Kafka

  1. Kafka concept
  2. Kafka data storage design
  3. Data file of partition (offset, MessageSize, data)
  4. Data file segmentation (sequential read and write, segment command, binary search)
  5. Data file index (segment index, sparse storage)
  6. Producer design
  7. Load balancing (partitions will be evenly distributed to different brokers)
  8. Batch send
  9. Compression (GZIP or Snappy)
  10. Consumer design
  11. Consumer Group

RabbitMQ

  1. RabbitMQ concept
  2. RabbitMQ architecture
  3. Exchange type

Hbase

  1. Hbase concept
  2. Columnar storage
  3. Hbase core concept
  4. Hbase core architecture
  5. Hbase write logic
  6. HBase vs Cassandra
  7. MongoDB
  8. MongoDB concept
  9. MongoDB features

Cassandra

  1. Cassandra concept
  2. Data model
  3. Cassandra consistent hash and virtual node
  4. Gossip protocol
  5. Data replication
  6. Data write request and coordinator
  7. Data read request and background repair
  8. Data storage (CommitLog, MemTable, SSTable)
  9. Secondary index (Generate RowKey for the value summary to be indexed)
  10. Data read and write

Design Patterns

  1. Design Principles
  2. Factory method pattern
  3. Abstract factory pattern
  4. Singleton mode
  5. Builder mode
  6. Prototype mode
  7. Adapter mode
  8. Decorator mode
  9. Agency model
  10. Appearance mode
  11. Bridge mode
  12. Combination mode
  13. Flyweight model
  14. Strategy mode
  15. Template method pattern
  16. Observer mode
  17. Iterative subpattern
  18. Chain of Responsibility Model
  19. Command mode
  20. Memo mode

Load balancing

  1. Layer 4 load balancing vs. Layer 7 load balancing
  2. Load balancing algorithm/strategy
  3. LVS
  4. Keepalive
  5. Nginx reverse proxy load balancing
  6. HAProxy

database

  1. Storage engine
  2. index
  3. Three paradigms of database
  4. Database is transaction
  5. Stored procedures (set of SQL statements for specific functions)
  6. Trigger (a program that can be executed automatically)
  7. Database concurrency strategy
  8. Database lock
  9. Distributed lock based on Redis
  10. Classification table
  11. Two-phase commit agreement
  12. Three-phase commit agreement
  13. Flexible transaction
  14. CAP

Consensus algorithm

  1. Paxos
  2. Oats
  3. Raft
  4. NWR
  5. Gossip
  6. Consistency Hash
  7. Consistent Hash feature
  8. Consistency Hash principle

JAVA algorithm

  1. Binary search
  2. Bubble sort algorithm
  3. Insertion sort algorithm
  4. Quick sort algorithm
  5. Hill sorting algorithm
  6. Merge sort algorithm
  7. Bucket sorting algorithm
  8. Base sorting algorithm
  9. Pruning algorithm
  10. Backtracking algorithm
  11. Shortest path algorithm
  12. Maximum subarray algorithm
  13. Longest Common Subsequence Algorithm
  14. Minimum spanning tree algorithm

data structure

  1. Stack
  2. Queue
  3. Link
  4. Hash Table
  5. Sorted binary tree
  6. Red black tree
  7. B-TREE
  8. bitmap

Encryption Algorithm

  1. AES
  2. RSA
  3. CRC
  4. MD5

Hadoop

  1. Hadoop concept
  2. HDFS
  3. Client
  4. NameNode
  5. Secondary NameNode
  6. DataNode
  7. MapReduce
  8. JobTracker
  9. TaskTracker
  10. Task
  11. Reduce Task execution process
  12. The life cycle of Hadoop MapReduce jobs
  13. Job submission and initialization
  14. Task scheduling and monitoring.
  15. Task operating environment preparation
  16. Task execution
  17. Homework completed

Spark

  1. Spark concept
  2. Core architecture
  3. Core components
  4. SPARK programming model
  5. SPARK calculation model
  6. SPARK operation process
  7. SPARK RDD process
  8. SPARK RDD

Storm

  1. Storm concept
  2. Cluster architecture
  3. Nimbus (master-code distribution to Supervisor)
  4. Supervisor (slave-manages the start and termination of the Worker process)
  5. Worker (process that specifically handles component logic)
  6. Task
  7. ZooKeeper
  8. Programming model (spout->tuple->bolt)
  9. opology operation
  10. Storm Streaming Grouping
  11. ResourceManager
  12. NodeManager
  13. ApplicationMaster
  14. YARN operation process

Machine learning

  1. Decision tree
  2. Random forest algorithm
  3. Logistic regression
  4. SVM
  5. Naive Bayes
  6. K nearest neighbor algorithm
  7. K-means algorithm
  8. Adaboost algorithm
  9. Neural Networks
  10. Markov

cloud computing

  1. SaaS
  2. PaaS
  3. IaaS
  4. Docker
  5. Openstack
  6. Namespaces
  7. Process (process isolation implemented by CLONE_NEWPID)
  8. Libnetwork and network isolation
  9. Resource isolation and CGroups
  10. Mirroring and UnionFS
  11. Storage driver

Due to space limitations, the editor, I am here to cut out a few illustrations of knowledge explanation, the program ape (yuan) in need can see the method of obtaining in the picture:

A list of knowledge that Java architects must know, how to improve your skills in the interview

 

A list of knowledge that Java architects must know, how to improve your skills in the interview

 

A list of knowledge that Java architects must know, how to improve your skills in the interview

 

A list of knowledge that Java architects must know, how to improve your skills in the interview

 

A list of knowledge that Java architects must know, how to improve your skills in the interview

 

How to obtain free architecture learning materials?

Information acquisition method:

Guess you like

Origin blog.csdn.net/qq_46388795/article/details/109097093