Interview: Chapter 17: Java Intermediate and Advanced Development

High-level development

Note: I recently saw that many friends like my Java Intermediate Development Chapter (close to 100,000 visits), so I decided to add a chapter of Intermediate and Advanced Development, and 11 questions in the interview. For each question, do you feel yourself You can talk for half an hour, even if you pass, the salary rating is about 20k.


Reminder: The following is the content of this article, I will fill in the answers later.

Top 10 interview questions

1. Multithreading (ThreadLocal (asked how parent and child threads share data interitableThreadLocals), the difference between lock and sync (when asked about the difference between HashMap 1.7 and 1.8), AQS principle (source code of the execution process, details of the team dequeue, details of the source code ), What is the source code level of the difference between CountDownLatch and CyclicBarrier? Volatile accounts for a large amount from instruction reordering, memory barriers, to bus storms)

answer:

敬请期待

2. Database (mysql index (clustered index, non-clustered index, index structure (incidentally, you will ask about the characteristics of various trees), execution plan, count1* difference, example to optimize the relationship between sql, MVCC and transaction isolation level, gap lock, row Locks (mixed with multithreading, optimistic locks, pessimistic locks, etc.), the difference between unique index and ordinary index talked about changeBuffer, talked about page splitting and page merging).

answer:

敬请期待

3. Jvm tuning (what are the root nodes in the reachability analysis algorithm, the difference between cms and G1, how to GC tuning, how to check the CPU, memory, and escape analysis)

answer:

敬请期待

4. How much redis data structure, jump table, redis qps can be, how to know, the difference between sentinel and cluster and their respective applicable scenarios, the redis cluster cluster synchronization process, why the redis single thread is fast, how big the key is, the reason for the hot key and Consequences and how to solve them, what to do if local caching needs high timeliness...

answer:

敬请期待

5. The role of spring, how to solve the spring cycle dependency (tell the details of the three-level cache source code), the principle of spring aop (dynamic proxy), the life cycle of spring bean (the source code details, and the design ideas of each location, what can be extended)

answer:

敬请期待

6. The dubbo service call process (dubbo service exposure and reference process), how does the dubbo caller generate the corresponding service in the jvm? Source code of dubbo server and caller timeout settings and differences, dubbo long connection, load balancing strategy, fault tolerance mechanism

answer:

敬请期待

7. Speaking of cache penetration, let me design a solution to prevent cache penetration. The simplest thing is to store the null value, but I will definitely study it. You can combine bloom filters to design a distributed system, and there will be questions. How to call the traffic distribution to specific filter services, such as consistent hash algorithm? For example, dubbo direct connection, etc. will be asked while talking about details.

answer:

敬请期待

8. Has there been any current limiting, and designed a most invasive current limiting service. I heard that the current limiting has been implemented and the current limiting standard (the number of concurrency? qps? The relationship between the number of concurrency and qps? Five types of limits are mentioned. Flow scheme and corresponding algorithm principle)

answer:

敬请期待

9. The difference between NIO and BIO, what problem does NIO solve, Netty thread model (source code torture)

answer:

敬请期待

10. The maximum concurrent number of MySQL row locks? (The spike project pointed out) The design of spike system, the asynchronous way I said, will ask how to optimize it? Changed to a synchronous way. What is the difference between asynchronous and synchronous? The spike system involves the update of multiple database tables. How can distributed transactions be solved? The messages I said are ultimately consistent and asynchronous? Is there a better solution? Synchronous TCC mode, the principle of TCC mode? (The concrete realization of three stages)

answer:

敬请期待

11. How to quickly troubleshoot online faults?

answer:

Insert picture description here

to sum up

The above is all the content of the article. At present, this article only briefly asks questions about the frequently asked interview questions. I will slowly fill in the answers in the later period. Everyone, I think I wrote a good one. It is a rewarding package.

Guess you like

Origin blog.csdn.net/java_wxid/article/details/109592735