2015 interview summary, 2015 interview
A three-hour interview with a hut may be the longest job ever
Briefly summarize the technical problems of the design:
First, JVM
ClassLoader's working mechanism: JVM architecture, working methods, and differences between GC in JVM memory management 7: What GC is triggered by Minor GC and Full GC?
Then the J2SE content
Reflection mechanism common collection classes of polymorphism in java and their implementation principles multi-threaded thread synchronization and which JUC classes have read the source code in JUC, their implementation mechanism
As for algorithms, I just asked how many sort algorithms and their time and space complexity
Common java frameworks (Basic java web interview mandatory items)
Spring/SpringMVC/Struts2/Hibernate/MyBatis/Spring Security have read their source code? What is their implementation principle with Servlet?
Design patterns:
Which of the 24 design patterns do you know? (I stole a lazy and explained it with the source code)
About Task Scheduling:
Quartz usage principle and usage in Distributed Clusters
Front-end
The native API of javascript is familiar with jQuery, and I am also asked about the underlying implementation of an animation effect, orz.
Difference between session and cookie
Cache:
The implementation principles of ehcache and memcached and the differences between them are distributed (because I have used these two caches)
Database:
Relational: the use of Mysql and Oracle examines the design skills of database tables, and especially the differences and Principles of the storage engines used by Mysql.
Non-relational: How NoSQL and MongoDB are used
Principles and algorithms of database indexing
Middleware/driver:
I checked the source code implementation principle of the Mysql driver.
Operating System:
Common Server Load balancer operations and linux commands for linux
Protocol:
Common Http headers
Web Server
Differences between nginx and apache how nginx works to achieve Load Balancing
Application Server
Which application servers have I used? Have I used tomcat/weblogic? Have I read the principle of tomcat source code?
Project management tools
SVN and GIT basic usage
Project Build Tool
ANT, MAVEN basic use, and MAVEN principles have you ever set up Maven private servers?
What about some project experience?
The PV volume of a project (the project is not very despised by Orz ). what is the server environment? How many servers, how to share sessions, and how to handle Server Load balancer,
Fortunately, it's better to welcome the New Year's greetings, O Haha ~