With 3 years of experience, I successfully joined Ali's P7 post. I rely on this experience of the boss, and quickly collect it!

Preface

Everyone wants to be an architect, but often only 10% of programmers can succeed. Imagination is simple, but persistence is difficult.
Finally, I want to give all programmers a piece of advice: In your daily work, don’t just confine yourself to the work at hand, because the work you are responsible for may only be the “tip of the iceberg” on a certain system, which is left by the predecessors. We must learn how to use it. At this time, we need to stand taller and look farther, to understand the whole meridian of this system, to speculate about the "Why? How?" it was originally designed, and what we should do instead, so maybe you will leave The architect is one step closer.

In addition, I am here to prepare interview materials for the first-line manufacturers and my original super hard-core PDF technical documents, as well as several sets of interview questions from the large manufacturers that I have carefully prepared for you (constantly updated), friends in need click here to remark csdn , Download by yourself ! Hope everyone can find the job they want!

Ali side

  • Did you teach Java by yourself, or follow the school curriculum? Which book did you read?
  • Do you understand Java design patterns?
  • What model do you think the Listener of the Spring framework is? Have you used it? How did you learn about Spring? Can you tell us about the execution order of Listener?
  • Do you know Spring's AOP programming? How many aspects does AOP have?
  • Where is the more proud of your experience, or where is the more difficult part?
  • In the last question, I said that I saw a lot about the basics of Java and MySQL, and then I continued to ask, do you know how the String type behaves in the JVM?
  • Do you know the stack of JVM?
  • Where do String variables generally exist? This led to the constant pool, and then began the deadly four questions.
  • If I define a private member a1 of type String, I give him an initial value, such as "abc", and then in another class, I also have a member variable a2 with the value "abc", if I compare a1 == a2, will it be equal?
  • If I define a local variable a3 in a method and compare a3 == a1, do you think it will be equal?
  • If a4 = new String("abc"), do you think this a4 will be equal to a3?
  • If the variable is not final modified, it is public static String a5. I assign a5 to "abc" in the constructor. Do you think it will be equal to a1?
  • The personal blog you wrote in your project was verified and tested by yourself when you were undergraduate, right?
  • Did you learn Nginx from blogs you read online? Can you tell me how many layers of proxy forwarding can Nginx do? At what level is it in OSI? Does it have other modes besides the application layer? Can it proxy the SSH protocol?
  • What protocol does the application layer have?
  • Do you know which layer of the SSH protocol works?
  • WebSocket, do you know which layer it is working on? What is the difference between it and Socket?
  • You just mentioned that you are good at DB. Which DB is it? Have you read any MySQL books?
  • Can you talk about the master and slave of MySQL?
  • Is there any MySQL command to get the SQL that I am currently stuck?
  • How to open slow query log? How to view historical slow query statements?
  • If you don't open slow query, how do you know where the statements in MySQL will execute for a long time?
  • You are mainly familiar with the index, right? Can MySQL text fields be indexed? What if I only save a few characters? Can it set a prefix index? If it is not a prefix index, it is a full-column index, I use LIKE query, LIKE abc%, will it hit the index? Why does it hit the index and what is the matching order? If LIKE %abc, will it hit the index?
  • Have you understood the data format of JSON in MySQL?
  • Do you know the new features of MySQL 8?
  • Is your RPC framework a test project? Do you know some RPC frameworks in the industry? Especially in the Java field?
  • Have you understood Java's RMI?
  • What is the difference between RMI and RPC?
  • Have you learned about JMX for Java?
  • Have you learned about Java Beans? What is JavaBean? What are the requirements for JavaBeans?
  • Are you participating in any competitions here?
  • Do you know anything about message queues? Do you know the existing message queue?
  • I ask a question about the data structure. If I have a matrix operation, I hope you can use Java to implement it. How would you design this data structure? How to calculate the calculation process? Do you think it is better to use an array or a List?
  • In Java, if I want to sort a List, do you know how it implements the sort() method internally? In addition to the quick sort, what sorting is there? What does it use to determine which type of sorting is called?
  • I think you write here that you like to pay attention to the development of some new technologies. At this point, I am more curious about what is new technology in your eyes, and which aspects will you pay attention to? New technology is Java?
  • The Java version is beginning. ArrayList list = new ArrayList<>(); You don’t need to write the type after the angle brackets. When did this feature appear?
  • Do you know when the Modules description file appeared?
    In which version was the permanent code removed? When did MetaSpace appear? What is the general recommended size of MetaSpace? Is it possible to explode?
  • If the physical machine has 11G of memory, the heap is set to 10G, and MetaSpace is set to 128M, is it possible to OOM? What will happen?
    Do you know about memory leaks?

Ali two sides

  • Introduce myself, the difference between HBase and MySQL, do they support transactions?

  • The role of maven, the life cycle of maven

  • Introduction to database connection pool

  • Introduce how AOP, IOC, and AOP bottom layer are implemented

  • JVM memory model, which areas are thread-safe and which areas are not thread-safe

  • Introduction to Garbage Collector

  • The underlying data structure of HashMap, what is the realization of TreeMap based on

  • Introduction to the volatile keyword, what are the memory barriers

  • MySQL isolation level, what problems will be encountered respectively

  • What are the phenomena of dirty reading, phantom reading, and non-repeatable reading

  • Why serialization does not encounter the above problems

  • What is the index of the innodb engine

  • Why does the index use B+ tree faster than other trees

  • Sword refers to offer two original questions + handwritten quick row

  • Data types stored in Redis

  • zest underlying data structure, hash underlying data structure

  • Introduce the dictionary, how to expand, and how to solve both hash tables in the incremental rehash process

Ali three sides

  • Introduce yourself.
  • How did you learn Java?
  • Look at your project, let's talk about distributed.
  • How to solve the shortcomings of raft?
  • What conformance agreements do you know?
  • Compare zab and raft? Advantages and disadvantages of zab setting observer?
  • Talk about multi-raft?
  • Cap understand? Why can't it be guaranteed? What does raft guarantee?
  • Do you understand gossip? How does the redis cluster achieve consistency?
  • Which scenarios need to ensure strong consistency, and which scenarios need to ensure final consistency?
  • Why do some scenarios need to guarantee availability?
  • Does hbase understand?
  • Why is netty's performance good? Why does pb's serialization protocol perform well?
  • What about zero copy?
  • The difference between select and epoll?
  • Do you understand the command mode? Tell me about it?
  • What about the proxy mode? Application scenarios? Why use dynamic proxy for the realization of aop?
  • .raft's leader election process?
  • raft log replication process?
  • If log replication uses a follower to receive logs, the leader crashes, and the logs are inconsistent, how to design the log replication function.
  • Do you understand the prefix query of es?
  • How to implement a prefix query?
  • The problem of storing Chinese prefix tree? How to deal with it?
  • Do a question:
  • A one-dimensional array, all 0s and 1, find the longest 1 sub-array.
  • Expand it a bit:
  • A two-dimensional array, find the largest matrix of 1.
  • Have you been reading anything recently?
  • Do you have anything to ask me?

to sum up

Finally, I prepared the Java architecture learning materials for everyone. The learning technology content includes: Spring, Dubbo, MyBatis, RPC, source code analysis, high concurrency, high performance, distributed, performance optimization, microservice advanced architecture development, etc. Friends in need click here to remark csdn and download by yourself ! People are very different. We all have our own goals. I am adrift in the first-tier cities and occasionally envy those who live happily and steadily in my hometown, but I deeply know that what I want is better every year. Progress in a year.
Insert picture description here

Guess you like

Origin blog.csdn.net/jiagouwgm/article/details/111649630