El análisis más completo de preguntas de la entrevista de Java en 2020 (980), las preguntas de la entrevista que no has visto están aquí

¿Qué gran fábrica quieres saltar este año? Esto es un problema. Para ser honesto, también fui abusado en la entrevista el año pasado. Con el fin de encontrar un trabajo agradable, pedí especialmente una entrevista bíblica (Ali Daniel) a mis amigos. Hay 980 preguntas y análisis de entrevistas, un total de 485 páginas de PDF . Incluyendo Java, MyBatis, ZooKeeper, Dubbo, Elasticsearch, Memcached, Redis, MySQL, Spring, Spring Boot, Spring Cloud, RabbitMQ, Kafka, Linux y otras pilas de tecnología .

Dado que las preguntas reales de la entrevista implican un análisis exhaustivo y detallado , todo el análisis no se incluirá en el artículo. Todas las preguntas reales de la entrevista 980 están organizadas en un documento pdf. Los amigos que necesitan este pdf pueden recibir al final:

Cada tema resume casi 50 preguntas reales (incluido el análisis), incluido un total de más de 20 temas como java, MyBatis, ZooKeeper y Dubbo. 485 páginas PDF.

Más de 20 temas:

Texto:

Preguntas de la entrevista de MyBatis (27):

¿Qué es mybatis?

1. Mybatis es un marco semi-ORM (Object Relational Mapping), que encapsula JDBC internamente. Solo necesita prestar atención a la declaración SQL en sí misma durante el desarrollo, y no necesita gastar energía para lidiar con los complicados procesos de cargar controladores, crear conexiones y crear declaraciones. El programador escribe directamente el SQL ecológico original, que puede controlar estrictamente el rendimiento de ejecución de SQL y tiene una gran flexibilidad.

2. MyBatis puede usar XML o anotaciones para configurar y mapear información nativa, mapear POJOs a registros en la base de datos, evitando casi todo el código JDBC y configurando parámetros manualmente y obteniendo conjuntos de resultados.

3. Configure las diversas declaraciones para que se ejecuten a través de archivos xml o anotaciones, y asigne los objetos java y los parámetros dinámicos de sql en la declaración para generar la declaración sql final ejecutada. Finalmente, el marco mybatis ejecuta el sql y asigna el resultado a java Objeto y retorno. (El proceso desde ejecutar sql hasta devolver el resultado).

  • Ventajas de Mybaits:
  • Desventajas del marco MyBatis:
  • Ocasiones aplicables del marco MyBatis:
  • ¿En qué se diferencia MyBatis de Hibernate?
  • ¿Cuál es la diferencia entre # {} y $ {}?
  • ¿Qué sucede si el nombre del atributo en la clase de entidad es diferente del nombre del campo en la tabla?
  • ¿Cómo escribir una consulta difusa como una declaración?
  • Por lo general, un archivo de mapeo Xml escribirá una interfaz Dao correspondiente. Disculpe, ¿cuál es el principio de funcionamiento de esta interfaz Dao? ¿Se pueden sobrecargar los métodos en la interfaz de Dao cuando los parámetros son diferentes?
  • ¿Cómo se paginó Mybatis? ¿Cuál es el principio del complemento de paginación?
  • ¿Cómo encapsula Mybatis el resultado de la ejecución de SQL como el objeto de destino y lo devuelve? ¿Cuáles son los formularios de mapeo?

Preguntas de la entrevista de ZooKeeper (28):

Preguntas de la entrevista de ZooKeeper?

ZooKeeper es un servicio de coordinación distribuida de código abierto, es un administrador de clúster que monitorea el estado de cada nodo en el clúster para realizar los siguientes pasos razonables en función de los comentarios enviados por los nodos. Al final, el usuario contará con una interfaz fácil de usar y un sistema con alto rendimiento y funciones estables. Las aplicaciones distribuidas pueden implementar funciones como publicación / suscripción de datos, equilibrio de carga, servicios de nombres, coordinación / notificación distribuida, gestión de clúster, elección maestra, bloqueos distribuidos y colas distribuidas basadas en Zookeeper.

  • ¿Qué ofrece ZooKeeper?
  • Sistema de archivos Zookeeper
  • Acuerdo ZAB?
  • Cuatro tipos de nodos de datos Znode
  • Notificación de cambio de datos del mecanismo Zookeeper Watcher
  • Registro del cliente Implementación de Watcher
  • El servidor maneja la implementación de Watcher
  • Devolución de llamada del cliente

Preguntas de la entrevista de Dubbo (30):

¿Por qué usar Dubbo?

Con el desarrollo posterior del servicio, hay cada vez más servicios, y las llamadas y dependencias entre servicios se vuelven cada vez más complejas. Nació una arquitectura orientada a servicios (SOA) y se derivaron una serie de tecnologías correspondientes. Tal como un marco de servicio que encapsula comportamientos como la provisión de servicios, invocación de servicios, procesamiento de conexiones, protocolo de comunicación, método de serialización, descubrimiento de servicios, enrutamiento de servicios y salida de registros. De esta manera, apareció el marco de gobierno de servicio para sistemas distribuidos, y nació Dubbo.

  • ¿Cuáles son las capas del diseño de arquitectura general de Dubbo?
  • ¿Qué marco de comunicación se usa por defecto? ¿Hay otras opciones?
  • ¿Están bloqueadas las llamadas de servicio?
  • ¿Están bloqueadas las llamadas de servicio?
  • ¿Qué centro de registro se usa generalmente? ¿Hay otras opciones?
  • ¿Qué marco de serialización se usa por defecto y qué más sabes?
  • ¿Cuál es el principio de que los proveedores de servicios pueden lograr la eliminación de fallas?
  • ¿Por qué el servicio en línea no afecta la versión anterior?

El análisis de cada tema es muy completo, e incluye más de 400 páginas de PDF, no es fácil de organizar. Si se siente bien, recuerde que desea brindar apoyo, gracias

Preguntas de la entrevista de Elasticsearch (24):

¿Describe en detalle el proceso de indexación de documentos de Elasticsearch?

Entrevistador: si desea comprender los principios subyacentes de ES, ya no solo se enfoca en el nivel comercial.

Respuesta: El documento de índice aquí debe entenderse como el proceso de escribir el documento en el ES y crear el índice. La escritura de documentos incluye: escritura de un solo documento y escritura masiva a granel, aquí solo explicamos: proceso de escritura de un solo documento. Recuerda esta imagen en la documentación oficial.

El primer paso: el cliente escribe datos en un nodo del clúster y envía una solicitud. (Si no se especifica un nodo de enrutamiento / coordinación, el nodo solicitado actúa como un nodo de enrutamiento).

Paso 2: después de que el nodo 1 recibe la solicitud, usa document_id para determinar que el documento pertenece al fragmento 0. La solicitud se transferirá a otro nodo, asumiendo el nodo 3. Por lo tanto, el fragmento principal del fragmento 0 se asigna al nodo 3.

Paso 3: el nodo 3 realiza una operación de escritura en el fragmento principal. Si tiene éxito, reenvía la solicitud a los fragmentos de réplica del nodo 1 y el nodo 2 en paralelo, esperando que el resultado regrese. Todos los fragmentos de réplica informan el éxito, el nodo 3 informará el éxito al nodo coordinador (nodo 1) y el nodo 1 informará el éxito de la escritura al cliente solicitante.

Si el entrevistador vuelve a preguntar: ¿el proceso para obtener el fragmentación del documento en el segundo paso?

Respuesta: Con la ayuda del algoritmo de enrutamiento, el algoritmo de enrutamiento es el proceso de calcular la identificación del fragmento de destino en función de la identificación de la ruta y del documento.

fragmento = hash (_rutamiento)% (num_of_primary_shards)

  • Elasticsearch sabe cómo hablar sobre la arquitectura de clúster es de su empresa, el tamaño de los datos de índice, cuántos fragmentos hay y algunos métodos de ajuste.
  • ¿Cuál es el índice invertido de Elasticsearch?
  • Elasticsearch cómo hacer más datos de índice, cómo ajustar e implementar
  • ¿Cómo consigue Elasticsearch una elección maestra?
  • ¿Describe en detalle el proceso de búsqueda de Elasticsearch?
  • ¿Cuáles son los métodos de optimización para la configuración de Linux cuando se implementa Elasticsearch?
  • ¿Cuál es la estructura interna de lucence?

Preguntas de la entrevista de Memcached (23):

¿Qué es Memcached y qué hace?

Memcached es un software de almacenamiento de memoria de alto rendimiento y código abierto. Del nombre, Mem significa memoria y Caché significa caché. El papel de Memcached: almacenando temporalmente todo tipo de datos en la base de datos en el espacio de memoria planificado previamente, para reducir el alto acceso directo y concurrente del negocio a la base de datos, a fin de mejorar el rendimiento de acceso de la base de datos y acelerar los servicios dinámicos de aplicación del clúster del sitio web Habilidad

  • ¿Cómo implementar el clúster distribuido del servicio Memcached?
  • ¿Cuáles son las características y el principio de funcionamiento del servicio Memcached?
  • ¿Describe brevemente el principio del mecanismo de gestión de memoria Memcached?
  • ¿Cómo funciona memcached?
  • ¿Cuál es la mayor ventaja de memcached?
  • consulta memcached y MySQL
  • ¿Cuáles son las ventajas y desventajas de memcached en comparación con el caché local del servidor (como APC de PHP, archivos mmap, etc.)?

Preguntas de la entrevista de Redis (40):

¿Qué es redis?

Redis es completamente de código abierto y gratuito, cumple con el protocolo BSD y es una base de datos clave de alto rendimiento.

Redis y otros productos de caché de valor clave tienen las siguientes tres características:

  • Redis admite la persistencia de los datos. Los datos en la memoria se pueden guardar en el disco y se pueden volver a utilizar cuando se reinicia.
  • Redis no solo admite datos simples de valor clave, sino que también proporciona almacenamiento de estructuras de datos como list, set, zset y hash.
  • Redis admite la copia de seguridad de datos, es decir, la copia de seguridad de datos en modo maestro-esclavo.

Ventaja de Redis

  • Rendimiento extremadamente alto: Redis puede leer a 110,000 veces / sy escribir a 81,000 veces / s.
  • Tipos de datos enriquecidos: Redis admite el funcionamiento de tipos de datos de cadenas, listas, hashes, conjuntos y conjuntos ordenados en casos binarios.
  • Atómico: todas las operaciones en Redis son atómicas, lo que significa que la ejecución exitosa o la falla no se realizan en absoluto. Una sola operación es atómica. Las operaciones múltiples también admiten transacciones, es decir, atomicidad, empaquetadas a través de instrucciones MULTI y EXEC.
  • Funciones completas: Redis también admite publicación / suscripción, notificación, caducidad de claves, etc.

¿En qué se diferencia Redis de otras tiendas de valores clave?

Redis tiene estructuras de datos más complejas y proporciona operaciones atómicas en ellas, que es una ruta evolutiva diferente de otras bases de datos. Los tipos de datos de Redis se basan en estructuras de datos básicas y son transparentes para los programadores sin abstracción adicional.

Redis se ejecuta en la memoria, pero puede guardarse en el disco, por lo que es necesario pesar la memoria al leer y escribir diferentes conjuntos de datos a alta velocidad, porque la cantidad de datos no puede ser mayor que la memoria del hardware. Otra ventaja de las bases de datos en memoria es que, en comparación con las mismas estructuras de datos complejas en el disco, es muy simple de operar en la memoria, por lo que Redis puede hacer muchas cosas con una gran complejidad interna. Al mismo tiempo, en términos de formato de disco, son compactos y se generan de manera adicional, ya que no requieren acceso aleatorio.

  • Redis tipo de datos?
  • ¿Cuáles son los beneficios de usar Redis?
  • ¿Cuáles son las ventajas de Redis sobre Memcached?
  • ¿Cuáles son las diferencias entre Memcache y Redis?
  • ¿Redis es un proceso único de un solo subproceso?
  • ¿Cuál es la capacidad máxima de un valor de tipo de cadena?
  • ¿Cuál es el mecanismo de persistencia de Redis? ¿Sus respectivas ventajas y desventajas?
  • Problemas comunes de rendimiento y soluciones de Redis:

Preguntas de la entrevista MySQL (50 preguntas):

¿Qué tipos de bloqueos hay en MySQL?

1. Cerraduras a nivel de tabla: cerraduras rápidas y elevadas, sin puntos muertos, granularidad de cerradura grande, la mayor probabilidad de conflictos de cerradura y la menor concurrencia.

2. Bloqueos a nivel de fila: grandes bloqueos generales y lentos; se producirán puntos muertos; la granularidad del bloqueo es la más pequeña, la probabilidad de conflictos de bloqueo es la más baja y la concurrencia también es la más alta.

3. Bloqueo de página: la sobrecarga y el tiempo de bloqueo se encuentran entre el bloqueo de la tabla y el bloqueo de la fila, se producirá un punto muerto, la granularidad del bloqueo se encuentra entre el bloqueo de la tabla y el bloqueo de la fila, y la concurrencia es promedio.

  • ¿Cuáles son las diferentes tablas en MySQL?
  • Describa brevemente la diferencia entre MyISAM e InnoDB en la base de datos MySQL
  • ¿Los nombres de los cuatro niveles de aislamiento de transacciones compatibles con InnoDB en MySQL y la diferencia entre cada nivel?
  • ¿Cuál es la diferencia entre CHAR y VARCHAR?
  • ¿Cuál es la diferencia entre la clave primaria y la clave candidata?
  • ¿Para qué se utiliza myisamchk?
  • ¿Qué sucede si una tabla tiene una columna definida como TIMESTAMP?

Resumen:

Lo anterior muestra una parte de las preguntas reales y una parte del análisis de los ocho temas, así como 123 programación simultánea de Java, 228 preguntas de la entrevista de Java, 116 preguntas de la entrevista de primavera, 50 preguntas de la entrevista de microservicio, 45 preguntas de la entrevista de Linux, Primavera Hay 22 preguntas de entrevista de arranque, 8 preguntas de entrevista de Spring Cloud, 12 preguntas de entrevista de RabbitMQ y 18 preguntas de entrevista de Kafka.


Responda, siga el código QR debajo de la cuenta pública,

Supongo que te gusta

Origin www.cnblogs.com/look-look/p/12707657.html
Recomendado
Clasificación