Summary of 2020 Java Interview Backend List: Concurrency + Redis + Database + JVM + Distributed + Tuning + Microservices..

Write in front

2020 is coming to an end. I have compiled 498 real interview questions that are the most classic of this year. Each question has a detailed answer, including java basics, RabbitMQ, microservices, MySQL database, Java concurrency, JVM, Redis, design Patterns, Spring / Spring MVC, and other topical classic interview questions, and detailed analysis,  including:

Eat thoroughly and digest well, so that you will no longer be flustered in the job interview!

Note: This "Interview Job-hopping Guide: Analysis of 498 Questions in the Core Interview for Java Senior Engineers of Internet Companies" (and more learning materials) can be shared with everyone to learn, "After one-click three-connection, add my VX assistant" Get it 100% for free!

Database articles

  1. The four characteristics of transactions (ACID) atomicity, consistency, isolation, and durability?
  2. Concurrency of transactions? Transaction isolation level, what problems each level will cause, which level is MySQL by default?
  3. What is the difference between the three common MySQL storage engines (InnoDB, MyISAM, MEMORY)?
  4. MySQL's MyISAM and InnoDB storage engines, transaction and lock levels, and their respective applicable scenarios?
  5. The difference between MySQL B+Tree index and Hash index?
  6. The sql query statement determines which type of index to create and how to optimize the query
  7. What are the locks (optimistic locks, pessimistic locks), and how to add exclusive locks when selecting?
  8. 7 problems of database read-write separation, master-slave replication, master-slave replication analysis?
  9. What kind of locks does MySQL have, the principles and specific scenarios of deadlock determination, and how to solve the deadlock?
  10. MySQL high concurrency environment solution?

Spring

  1. Spring IoC, AOP principle
  2. Spring Bean life cycle
  3. How Spring Bean Injection solves the problem of circular dependencies
  4. How to configure Spring with annotations?
  5. Why does Spring transaction fail
  6. The process of SpringMVC?
  7. Advantages of Springmvc:
  8. What are the usage scenarios of Spring notification types?
  9. IoC control inversion design principle?
  10. How does Spring deal with thread concurrency?

JVM articles

  1. Java class loading process?
  2. Describe the principle mechanism of JVM loading Class files?
  3. Briefly describe the Java garbage collection mechanism.
  4. What are class loaders and what are the class loaders?
  5. How to judge whether an object is alive? (Or how to determine the GC object)
  6. The advantages and principles of garbage collection. And consider two recycling mechanisms.
  7. What is the basic principle of the garbage collector? Can the garbage collector reclaim memory immediately? Is there any way to proactively notify the virtual machine for garbage collection
  8. Will there be a memory leak in Java? Please describe briefly.
  9. Briefly describe the Java memory allocation and recovery strategy, Minor GC and Major GC.
  10. What are the methods of garbage collection in Java?

Java Concurrency

  1. Have you ever used Synchronized and what is its principle?
  2. Why is Synchronized an unfair lock?
  3. Why is Synchronized a pessimistic lock? What is the principle of optimistic locking? What is CAS, it has
  4. Please compare the similarities and differences between Synchronized and ReentrantLock in as much detail as possible.
  5. Talk about ReadWriteLock and StampedLock.
  6. How to synchronize the threads of Java with each other? What synchronizers do you know about? Please introduce them separately.
  7. How are threads in the thread pool created? Was it created at the beginning with the thread pool started?
  8. Mentioned that different thread pools can be created by configuring different parameters, so what thread pools are implemented by default in Java? Please compare
  9. How to submit threads in the Java thread pool?
  10. Please talk about the characteristics of volatile and why it can guarantee the visibility of variables to all threads?

Redis cache articles

  1. What is Redis transaction? What is the principle?
  2. Please introduce the Redis data type SortedSet (zset) and the underlying implementation mechanism?
  3. What are the commonly used commands in Redis?
  4. What is cache penetration? How to deal with it?
  5. What is a cache avalanche? How to deal with it?
  6. Please introduce a few possible reasons for Redis blocking
  7. How many cache update strategies are there? What are the precautions?
  8. Why is Redis designed to be single-threaded?
  9. What is the difference between Redis persistence mechanism AOF and RDB?
  10. What are the Redis cache invalidation strategies?

RabbitMQ articles

  1. What are the usage scenarios of RabbitMQ?
  2. What are the important roles of RabbitMQ?
  3. What are the important components of RabbitMQ?
  4. How are RabbitMQ messages sent?
  5. How does RabbitMQ ensure the stability of messages?
  6. How does RabbitMQ avoid message loss?
  7. What are the conditions to ensure successful message persistence?
  8. How many broadcast types does RabbitMQ have?
  9. How does RabbitMQ implement a delayed message queue?
  10. What happens if the only disk node in the RabbitMQ cluster crashes?

Java Collection

  1. The difference between ArrayList and Vector
  2. Talk about the storage performance and characteristics of ArrayList, Vector, LinkedList
  3. What is the difference between fail-fast and fail-safe?
  4. The data structure of hashmap.
  5. How does HashMap work?
  6. When will Hashmap expand?
  7. What is the difference between HashSet and TreeSet?
  8. What is the underlying implementation of HashSet?
  9. How does LinkedHashMap work?
  10. The difference between Collection and Collections.

Microservices

  1. What are the advantages of using Spring Cloud?
  2. What does service registration and discovery mean? How to achieve Spring Cloud?
  3. What is the significance of load balancing?
  4. What is Hystrix? How does it achieve fault tolerance?
  5. What is a Hystrix circuit breaker? Do we need it?
  6. What is Netflix Feign? What are its advantages?
  7. What are the core configuration files of Spring Boot? What is the difference between them?
  8. What is the core annotation of Spring Boot? Which annotations are mainly composed of?
  9. What is the monitor in Spring Boot?
  10. What is Swagger? Have you implemented it with Spring Boot?

Zookeeper articles

  1. zk naming service (file system)
  2. zk configuration management (file system, notification mechanism)
  3. Zookeeper cluster management (file system, notification mechanism)
  4. Zookeeper distributed lock (file system, notification mechanism)
  5. The process of obtaining a distributed lock
  6. Zookeeper queue management (file system, notification mechanism)
  7. Zookeeper data replication
  8. How Zookeeper works
  9. How does zookeeper ensure the sequential consistency of transactions?
  10. Server working status under Zookeeper

Solutions

  1. API interface security design
  2. Spike system design ideas
  3. Distributed transaction solution
  4. SSO single sign-on solution
  5. Detailed explanation of Redis cache and MySQL data consistency scheme
  6. Sub-database and sub-table design
  7. Cache avalanche, penetration, breakdown solution

At last

I have sorted out the answers to these questions and recorded them in this Java study note. This note includes Spring, JVM, Java basics, Java collections, Java concurrent programming, microservices, network, Kafka, distributed, Redis, Dachang Interview solutions, distributed transactions, design patterns, algorithms, data structures, MySQL, etc.

 

Guess you like

Origin blog.csdn.net/a159357445566/article/details/112393680