Repolode
doocs

doocs/advanced-java

Base de conocimiento para preparar entrevistas de Java backend: concurrencia, sistemas distribuidos, microservicios y big data.

Estrellas
79,159
Forks
19,111
Issues abiertos
0
Último commit
hace 6 días

¿Qué es?

Base de conocimiento seleccionada y recopilación de preguntas de entrevista para desarrolladores con experiencia en Java backend. Está organizada en cinco secciones: arquitectura de alta concurrencia, sistemas distribuidos, alta disponibilidad, microservicios y procesamiento de datos a gran escala. Abarca colas de mensajes, motores de búsqueda, caché, sharding y separación de lecturas y escrituras.

La sección de alta concurrencia compara Kafka, ActiveMQ, RabbitMQ y RocketMQ, y aborda el consumo idempotente, la entrega confiable, el orden de los mensajes y la gestión de acumulaciones. Los temas de caché giran en torno a Redis: modelo de hilos, tipos de datos, persistencia, replicación maestro-esclavo y modos Sentinel y Cluster, además de avalanchas, penetración y descomposición de caché.

Los temas de sistemas distribuidos y microservicios incluyen el funcionamiento interno de Dubbo, protocolos de serialización, balanceo de carga y gestión de servicios, bloqueos distribuidos con Redis frente a Zookeeper, transacciones y sesiones distribuidas, y aislamiento de grupos de hilos, circuit breaking, fallback y timeouts en Hystrix. La sección de big data presenta problemas de TopK, deduplicación y búsqueda de la mediana. También se ofrece un PDF sin conexión de 283 páginas.

Funciones clave

  • 01El contenido se organiza en cinco secciones: alta concurrencia, sistemas distribuidos, alta disponibilidad, microservicios y procesamiento de big data.
  • 02Cada pregunta aborda un componente concreto, como colas de mensajes, Redis, Elasticsearch, Dubbo o Hystrix.
  • 03Incluye comparaciones para elegir tecnologías, por ejemplo, Kafka frente a ActiveMQ, RabbitMQ y RocketMQ, y Sentinel frente a Hystrix.
  • 04Hay disponible un PDF sin conexión de 283 páginas para consultar el material sin acceder a GitHub.
  • 05Está escrito íntegramente en archivos Markdown en chino, que se pueden consultar en GitHub o en el sitio de documentación.

Casos de uso

  • Prepararse para entrevistas de Java backend repasando un área temática a la vez.
  • Consultar enfoques de caché, sharding y limitación de tasa al diseñar un sistema de alta concurrencia.
  • Comparar middleware y frameworks al elegir tecnologías para sistemas distribuidos o microservicios.
  • Repasar el funcionamiento interno y los modos de fallo habituales de Redis, las colas de mensajes y Dubbo.

Inicio rápido

  1. 1

    Lee la base de conocimientos en GitHub; no hace falta instalar nada

  2. 2

    Explora el índice de temas empezando por la sección de alta concurrencia

Antes de usarlo

  • El contenido son apuntes para preparar entrevistas, no software ejecutable ni una biblioteca de código.
  • La mayor parte del material está en chino simplificado.
  • Algunas partes de la sección de microservicios están incompletas y contienen entradas de marcador de posición.

En colecciones

Temas

Preguntas frecuentes

¿Qué es advanced-java?
Base de conocimiento para preparar entrevistas de Java backend: concurrencia, sistemas distribuidos, microservicios y big data. Base de conocimiento seleccionada y recopilación de preguntas de entrevista para desarrolladores con experiencia en Java backend. Está organizada en cinco secciones: arquitectura de alta concurrencia, sistemas distribuidos, alta disponibilidad, microservicios y procesamiento de datos a gran escala. Abarca colas de mensajes, motores de búsqueda, caché, sharding y separación de lecturas y escrituras.
¿advanced-java es gratuito? ¿Qué licencia tiene?
advanced-java es open source bajo la licencia CC-BY-SA-4.0. Revisa los términos de la licencia antes de usarlo en productos comerciales.
¿advanced-java sigue mantenido?
Mantenimiento activo. El último commit de advanced-java fue el 19 oct 2026.
¿Para qué puedo usar advanced-java?
Prepararse para entrevistas de Java backend repasando un área temática a la vez. Consultar enfoques de caché, sharding y limitación de tasa al diseñar un sistema de alta concurrencia. Comparar middleware y frameworks al elegir tecnologías para sistemas distribuidos o microservicios. Repasar el funcionamiento interno y los modos de fallo habituales de Redis, las colas de mensajes y Dubbo.
¿Cómo se instala advanced-java?
Lee la base de conocimientos en GitHub; no hace falta instalar nada Explora el índice de temas empezando por la sección de alta concurrencia
¿Dónde consigo advanced-java?
El código fuente y las instrucciones de instalación están en GitHub: https://github.com/doocs/advanced-java

Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.

Proyectos relacionados