En los últimos años, la entrevista con Ali resumió 360 preguntas de la entrevista, [publicación de Java] (JVM + mysql + Netty + spring + framework)

Prefacio

La entrevista de Alibaba con Java debe cuestionar el análisis 360 (JVM + mysql + Netty + spring + framework)

 

Son los tres dorados y los cuatro plateados. Es posible que muchas personas no hayan trabajado en una empresa de Internet antes de la entrevista o que hayan trabajado durante un período de tiempo relativamente corto. No sé qué preguntas se harán en una entrevista técnica de una empresa de Internet. Además, es posible que no me haya preparado lo suficiente. Me sentí abrumado por algunas preguntas del entrevistador a las pocas rondas de la entrevista y terminé en una derrota desastrosa. En respuesta a sus preguntas, he compilado las preguntas y respuestas reales de jvm + open source framework + netty + spring + MySQL + dubbo + netty + mybatis. Después de leerlo, espero poder ser de alguna ayuda.

La entrevista de Alibaba con Java debe cuestionar el análisis 360 (JVM + mysql + Netty + spring + framework)

 

Toda la información se ha ordenado en un documento, y todas las respuestas no se enumeran en el artículo. Necesita información editor de cartas privadas: [información de arquitectura]

JVM:

  1. El modelo de memoria y las particiones deben detallarse a qué poner en cada área.
  2. Particiones en el montón: Edén, supervivencia (de + a), vejez, sus propias características.
  3. Método de creación de objetos, asignación de memoria de objetos, ubicación de acceso a objetos.
  4. Dos métodos de juicio de GC:
  5. ¿Qué es SafePoint?
  6. Los tres métodos de recolección de GC: los principios y características de eliminación de marcas, clasificación de marcas y algoritmos de copia. ¿Cuáles son los principios y características de los algoritmos? Si se le pide que optimice el método de recolección, ¿qué ideas tiene?
  7. ¿Qué son los colectores GC? Características del colector CMS y colector G1.
  8. ¿Cuándo ocurren respectivamente la GC menor y la GC completa?
  9. Varias herramientas de depuración de memoria de uso común: jmap, jstack, jconsole, jhat
  10. Varios procesos de carga de clases:
  11. La memoria JVM se divide en varias áreas, ¿cuál es el papel de cada área?
  12. ¿Cómo juzgar si un objeto está vivo? (O cómo juzgar los objetos GC)
  13. ¿Describe brevemente el mecanismo de recolección de basura de Java?
  14. ¿Cuáles son los métodos de recolección de basura en java?
  15. modelo de memoria java
  16. proceso de carga de clases de Java?
  17. ¿Describe brevemente el mecanismo de carga de clases de Java?
  18. ¿El mecanismo del modelo de delegación principal del cargador de clases?
  19. ¿Qué son los cargadores de clases y qué son los cargadores de clases?
  20. Describa brevemente la estrategia de recuperación y asignación de memoria de Java y el GC menor y el GC mayor

Marco de código abierto:

  1. ¿Cuál es la diferencia entre BeanFactory y ApplicationContext?
  2. El ciclo de vida de Spring Bean
  3. Cómo implementar Spring IOC
  4. Hablar de Spring AOP
  5. Principio de implementación de Spring AOP
  6. Proxy dinámico (cglib y JDK)
  7. Implementación de transacciones de primavera
  8. El principio subyacente de la transacción Spring
  9. Cómo personalizar anotaciones para implementar funciones
  10. Proceso de ejecución de Spring MVC
  11. Proceso de inicio de Spring MVC
  12. Principio de implementación de singleton de Spring
  13. Qué patrones de diseño se utilizan en el marco de Spring

Netty

  1. Por que elegir Netty
  2. Hable sobre los escenarios de uso de Netty en los negocios.
  3. Native NIO tiene un error de epoll en JDK 1.7
  4. ¿Qué es TCP pegado / desempaquetado?
  5. Solución de pegado / desembalaje de TCP
  6. Modelo de hilo de Netty
  7. Habla sobre la copia cero de Netty
  8. Proceso de ejecución interno de Netty

primavera

  1. ¿Qué es el marco Spring? ¿Cuáles son los módulos principales del marco Spring?
  2. ¿Cuáles son los beneficios de usar el marco Spring?
  3. ¿Qué es la inversión de control (IOC)? ¿Qué es la inyección de dependencia?
  4. Explique el IoC en el marco de Spring.
  5. ¿Cuál es la diferencia entre BeanFactory y ApplicationContext?
  6. ¿Cuántas formas de configurar Spring?
  7. ¿Cómo configurar Spring basado en la configuración XML?
  8. ¿Cómo configurar Spring basado en la configuración de Java?
  9. ¿Cómo configurar Spring con anotaciones?
  10. Por favor, explique el ciclo de vida de Spring Bean.
  11. ¿Cuál es la diferencia entre el alcance de Spring Bean?
  12. ¿Qué son los frijoles internos de Spring?
  13. ¿Son los beans singleton en el marco Spring seguros para subprocesos?
  14. Por favor, dé un ejemplo de cómo inyectar una colección Java en Spring.
  15. ¿Cómo inyectar un Java.util.Properties en Spring Bean?
  16. Por favor, explique el cableado automático de Spring Bean.
  17. Explique la diferencia en el modo de montaje automático.
  18. ¿Cómo habilitar el ensamblaje automático basado en anotaciones?
  19. Por favor, dé un ejemplo para explicar la anotación @Required?
  20. Por favor, dé un ejemplo para explicar la anotación @Autowired.
  21. Por favor, dé un ejemplo de anotación @Qualifier.
  22. ¿Cuál es la diferencia entre inyección de constructor e inyección de configuración?
  23. ¿Cuál es la diferencia entre FileSystemResource y ClassPathResource?
  24. ¿Qué patrones de diseño se utilizan en el marco de Spring?

mysql

  1. Una tabla con una clave primaria de incremento automático de ID. Después de insertar 17 registros, elimine los registros 15, 16, 17, reinicie Mysql e inserte un registro. ¿El ID de este registro es 18 o 15?
  2. ¿Cuáles son las características técnicas de Mysql?
  3. ¿Qué es la tabla Heap?
  4. ¿Cuál es el puerto predeterminado del servidor Mysql?
  5. Comparado con Oracle, ¿cuáles son las ventajas de Mysql?
  6. ¿Cómo distinguir FLOAT y DOUBLE?
  7. ¿Distinguir entre CHAR_LENGTH y LENGTH?
  8. Describa brevemente los nombres de los cuatro niveles de aislamiento de transacciones admitidos por InnoDB en Mysql y las diferencias entre cada nivel.
  9. ¿Cuál es el uso de ENUM en Mysql?
  10. ¿Cómo definir REGEXP?
  11. ¿Cuál es la diferencia entre CHAR y VARCHAR?
  12. ¿Cuál puede ser el tipo de cadena de la columna?
  13. ¿Cómo obtener la versión actual de Mysql?
  14. ¿Qué motor de almacenamiento se utiliza en Mysql?
  15. ¿Qué es el controlador Mysql?
  16. ¿Qué hace TIMESTAMP en el tipo de datos UPDATE CURRENT_TIMESTAMP?
  17. ¿Cuál es la diferencia entre la clave principal y la clave candidata?
  18. ¿Cómo usar el shell de Unix para iniciar sesión en Mysql?
  19. ¿Para qué se utiliza myisamchk?
  20. ¿Cuáles son los comandos de método para el análisis del rendimiento del servidor de base de datos MYSQL?

Dubbo

  1. ¿Qué protocolos admite Dubbo, los escenarios de aplicación de cada protocolo, las ventajas y desventajas?
  2. ¿Cómo configurar el tiempo de espera de Dubbo?
  3. ¿Qué centros de registro tiene Dubbo?
  4. ¿Cuáles son las estrategias de equilibrio de carga para los clústeres de Dubbo? 
  5. ¿Qué es Dubbo?
  6. ¿Cuáles son los principales escenarios de aplicación de Dubbo?
  7. ¿Cuál es la función principal de Dubbo?
  8. ¿Los componentes centrales de Dubbo?
  9. ¿Proceso de registro y descubrimiento del servicio Dubbo?
  10. ¿El diseño de la arquitectura de Dubbo?
  11. ¿Qué protocolos admite Dubbo, los escenarios de aplicación de cada protocolo, las ventajas y desventajas?
  12. ¿Qué centros de registro tiene Dubbo?
  13. ¿Dubbo usa un registro por defecto?
  14. ¿Por qué necesitamos la gobernanza del servicio?

netty

  1. ¿Cuál es la diferencia entre BIO, NIO y AIO?
  2. ¿Cuál es la composición de NIO?
  3. ¿Cuáles son las características de Netty?
  4. ¿El modelo de enhebrado de Netty?
  5. ¿La razón y la solución del bloqueo / desembalaje de TCP?
  6. ¿Qué protocolos de serialización conoces?
  7. ¿Cómo elegir un protocolo de serialización?
  8. ¿Implementación de copia cero de Netty?
  9. ¿Cuáles son las altas prestaciones de Netty?
  10. ¿Código fuente de NIOEventLoopGroup?

mybatis

  1. ¿Qué es MyBatis?
  2. Hablar del caché de MyBatis
  3. ¿Cómo funciona la paginación Mybatis? ¿Cuál es el principio del complemento de paginación?
  4. Describa brevemente el principio de funcionamiento del complemento Mybatis y cómo escribir un complemento.
  5. ¿Qué hace Mybatis dynamic sql? ¿Qué son los SQL dinámicos? ¿Puede describir brevemente el principio de implementación de sql dinámico?
  6. ¿Cuál es la diferencia entre # {} y $ {}?
  7. ¿Por qué Mybatis es una herramienta de mapeo ORM semiautomática? ¿Cuál es la diferencia entre esto y completamente automático?
  8. ¿Mybatis admite la carga diferida? Si es así, ¿cuál es su principio de implementación?
  9. ¿Cuál es la diferencia entre MyBatis e Hibernate?
  10. ¿Cuáles son los beneficios de MyBatis?
  11. Describa brevemente la relación de mapeo entre el archivo de mapeo Xml de Mybatis y la estructura de datos interna de Mybatis.
  12. ¿Qué es el enlace de interfaz de MyBatis y cuáles son los beneficios?
  13. Hay varias formas de implementar el enlace de interfaz, ¿cómo se implementan?
  14. ¿En qué circunstancias son vinculantes las anotaciones y en qué circunstancias vinculantes xml?
  15. ¿De cuántas formas implementa MyBatis uno a uno? ¿Cómo se hace?
  16. ¿Puede Mybatis realizar consultas relacionadas uno a uno y uno a varios? ¿Cuáles son los métodos de implementación y las diferencias entre ellos?
  17. ¿Cómo se establece el SQL dinámico en MyBatis? ¿Qué sintaxis?
  18. ¿Cómo encapsula Mybatis el resultado de la ejecución de SQL como un objeto de destino y lo devuelve? ¿Cuáles son las formas de mapeo?
  19. En el archivo de mapeo Xml, además de las etiquetas comunes select | insert | Updae | delete, ¿qué otras etiquetas hay?
  20. Cuando el nombre del atributo en la clase de entidad es diferente del nombre del campo en la tabla, ¿qué pasa si el resultado de la consulta está encapsulado en el pojo especificado?
  21. Cómo escribir una declaración similar en una consulta difusa
  22. Por lo general, un archivo de mapeo Xml escribirá una interfaz de Dao correspondiente a él. ¿Se puede sobrecargar el principio de trabajo de Dao?
  23. En el archivo de mapeo de Mybatis, si la etiqueta A se refiere al contenido de la etiqueta B mediante la inclusión, ¿se puede definir la etiqueta B después de la etiqueta A o debe definirse antes de la etiqueta A?
  24. En el archivo de mapeo Xml de Mybatis, ¿se puede repetir la identificación para diferentes archivos de mapeo Xml?
  25. ¿Cómo ejecutar el procesamiento por lotes en Mybatis?
  26. ¿Qué ejecutores ejecutores tiene Mybatis? ¿Cuál es la diferencia entre ellos?
  27. ¿Cómo especificar qué tipo de Ejecutor usar en Mybatis?
  28. Mybatis realiza la inserción por lotes, ¿puede devolver la lista de claves primarias de la base de datos?
  29. ¿Puede Mybatis mapear la clase de enumeración Enum?
  30. ¿Cómo obtener el valor de la clave (primaria) generada automáticamente?
  31. ¿Cómo pasar múltiples parámetros en el mapeador?
  32. Disposición de los puntos de conocimiento básicos de Java;

 

La entrevista de Alibaba con Java debe cuestionar el análisis 360 (JVM + mysql + Netty + spring + framework)

Además de estos, hay muchas preguntas de entrevistas reales y materiales de video, notas de estudio y libros electrónicos para todos. Quienes lo necesiten pueden enviar mensajes privados [información de arquitectura] para obtener toda la información.

La entrevista de Alibaba con Java debe cuestionar el análisis 360 (JVM + mysql + Netty + spring + framework)

 

La entrevista de Alibaba con Java debe cuestionar el análisis 360 (JVM + mysql + Netty + spring + framework)

 

Supongo que te gusta

Origin blog.csdn.net/tutouchengxuyua/article/details/109199589
Recomendado
Clasificación