Distribuido JVM + + + algoritmo de bloqueo + MQ + preguntas de la entrevista micro base de datos de servicio +

Java Foundation

1. ¿Cuáles son varios tipos de datos básicos Java es, cuántos bytes de cada ocupación

Java tipos de datos básicos 8 especies:

  

Glosario:

 bit: bits, la unidad más pequeña de almacenamiento de datos de ordenador, un número de bits en el número binario.

 byte: byte, la unidad básica de almacenamiento de datos informáticos, un byte consta de número binario de 8 bits. Por lo general un carácter es de dos bytes.

2, clase String puede heredar, y por qué.

 

No, porque la clase String tiene último partido de clasificación, mientras que la clase modificada final no puede ser heredada, los detalles de implementación no se les permite el cambio.

Acerca de modificador final, se describe como sigue:

De acuerdo con el contexto del programa, Java palabra clave final de "No se puede cambiar" o "estado final" lo que significa que puede ser modificado de clase no abstracta, no abstractos métodos miembro de clase y variables. Es posible que tenga que parar para cambiar dos entendimientos: diseño o la eficiencia. 
  clase final no puede ser heredada, no sub-clase, el método final clase predeterminada es final. 
  métodos finales no pueden anular métodos por las subclases, pero puede ser heredada. 
  variable miembro final representa una constante, sólo se pueden asignar una vez, después de que el valor asignado no cambia. 
  método no se puede utilizar para modificar la construcción final. 
  Nota: Los miembros privados del método de la superclase es un método de clase no puede cubierta del edredón, por lo que el tipo particular de método es el último tipo de defecto.

Si una clase no se permite sobrescribir un método de subclase, este método puede ser declarado aproximación final. 
  Hay dos razones para el uso de la aproximación final: 
  En primer lugar, el método de bloqueo para evitar cualquier clase que hereda de modificar su significado y aplicación. 
  En segundo lugar y eficiente. encuentros compilador cuando se llame al método final integrado en el mecanismo, lo que mejora la eficiencia.

 

 3 diferencia, String, StringBuffer, StringBuilder es.

 4, ArrayList y LinkedList ¿Cuál es la diferencia

 

 5, los ejemplos de la clase para hablar, como los constructores de datos de la clase padre estática, campos, constructores de datos subclase estática, campos, el momento en que nuevos, su orden de ejecución

 

6, que utiliza la clase mapa, ¿cuál es la diferencia, HashMap es seguro para subprocesos para usted, ¿cuál es el uso de los concurrentes mapa son y lo que son los principios internos, tales como el almacenamiento, código hash, la expansión, la capacidad por defecto.

 

7, JAVA8 de ConcurrentHashMap Por qué renunciar a la sub-bloqueo, ¿cuál es el problema, y ​​si se llega a diseñar, cómo diseñar.

 

8, no hay ninguna clase de implementación Mapa secuencial, y si es así, cómo asegurar que se les ordena.

 

9, la diferencia entre clases abstractas e interfaces, lo que las clases pueden heredar de múltiples clases, interfaces, múltiples interfaces puede heredar, ¿qué clase puede implementar múltiples interfaces.

 

10, la herencia y la diferencia entre el lugar donde la polimerización.

 

11, modelo IP, que, hablar nio sobre su comprensión de la diferencia entre él y bio, AIO es válida para hablar de modelos de reactor.

 

 12, el principio de reflexión, lo que refleja lo que tres formas de crear una instancia de clase sí.

 

13, la reflexión y la diferencia Class.forName cargador de clases.

 

14, describir la dinámica de proxy varias implementaciones, cada uno correspondiente desventajas habladas.

 

15, agente dinámico y CGLIB lograr distinción.

 

16. ¿Por qué maneras CGLIB para implementar proxy de interfaz.

 

17, el uso final.

 

18, tres tipos de modos de escritura para lograr una única realización.

 

19, la forma en la subclase de la clase padre completar automáticamente todo el código hash y es igual a lograr? Lo que hacen los pros y los contras.

 

20, por favor, combinado con un diseño orientado a objetos, hablar de modificadores de acceso público, el papel del privado, protegido, por defecto en el diseño de aplicaciones.

 

21, distinción copia de copia profunda y superficial.

 

22, y una matriz de estructura de datos de lista enlazada describen, cada uno complejidad de tiempo.

 

23, la diferencia entre el error y excepción, CheckedException, la diferencia de RuntimeException. Por favor, enumere la excepción de ejecución 5.

 

24, en su código, si crea una clase java.lang.String que se pueden cargar si el cargador de clases? Por qué.

 

25, habla de su comprensión de java.lang.Object objeto hashCode y métodos es igual. ¿En qué escenarios necesitan para poner en práctica estos dos métodos.

 

26, en jdk1.5, la introducción de los genéricos, la presencia genéricos se utiliza para resolver el problema.

 

27, ¿cuál es el uso de a.hashcode, tiene algo que ver con a.equals (b). Puede haber dos objetos desiguales tienen el mismo código hash.

 

28, en el interior de Java HashSet cómo funciona.

 

29. ¿Cuál es la serialización, serializado cómo y por qué la serialización, deserialización encuentro ningún problema, la forma de resolver.

 

30, java8 de nuevas características.

 

conocimiento JVM

1, bajo qué circunstancias se produce desbordamiento de la memoria de pila

 

2, las estructuras de memoria de JVM, Eden y la relación de sobreviviente.

 

3, la memoria JVM por qué la nueva generación, la vieja era, con una duración generaciones. ¿Por qué la nueva generación en el Edén y sobreviviente.

 

4, JVM en un proceso de GC completa, cómo los objetos promovidos a la vieja era, ya sabes, hablar de varios de los principales parámetros de JVM.

 

5. ¿Usted sabe cuáles tipos de recolectores de basura, sus ventajas y desventajas, y poner de relieve algunos de los cms inferior G1, incluyendo principios, procesos, fortalezas y debilidades.

 

6, para lograr el principio de algoritmos de recolección de basura.

 

7, cuando hay un desbordamiento de la memoria, ¿cómo depurar.

 

 8, el conocimiento del modelo de memoria de JVM para entender cuánto, tales como la reordenación, las barreras de memoria, ocurrirá antes, la memoria principal, memoria de trabajo y así sucesivamente.

 

9, simplemente hablar de su comprensión del cargador de clases puede delegar a romper los padres, cómo romper.

 

10, habla de la reflexión de Java.

 

11, G1 y la diferencia cms, el rendimiento de prioridad y en respuesta al recolector de basura prioridad de selección.

 

12, cómo jugar información de pila de hilo.

 

13. Por favor, explicar el significado de la siguiente argumento JVM:

-server -Xms512m -Xmx512m -Xss1024K

-XX: PermSize = 256m -XX: MaxPermSize = 512m -

XX: MaxTenuringThreshold = 20XX: CMSInitiatingOccupancyFraction = 80 -

XX: + UseCMSInitiatingOccupancyOnly.

 

 framework de código abierto para el conocimiento

1, sólo tiene que hablar de la estructura de Tomcat, así como sus procesos de cargador de clases, roscado modelo.

 

2, Tomcat como afinar, que los parámetros involucrados.

 

3, hablar sobre el proceso de carga de los resortes.

 

4. El principio de la primavera AOP.

 

5, hablar de las propiedades de propagación transacción de primavera.

 

6, Primavera cómo manejar asuntos.

 

7, Primavera cómo configurar una transacción (digamos específicamente algunos de los elementos clave de XML).

 

8, hablar acerca de su comprensión de la primavera, principio de inyección no Singleton? Su ciclo de vida? principio de bucle de inyección, el principio de aplicación de AOP, hablar de algunas AOP en términos de cómo funcionan entre sí.

 

9, SpringMVC DispatcherServlet en el proceso de inicialización.

 

10, modelo de enhebrado de Netty, en función de cómo Netty implementación del modelo de reactor.

 

11. ¿Por qué Netty.

 

12. ¿Cuál es el paquete TCP palo, desembalaje. ¿Cuál es la manera de la solución es.

 

13, Netty del uso fashwheeltimer, principios de implementación, si había habido tiempo suficiente para llamada, cómo resolver.

 

14, proceso de latido Netty cómo hacerlo en la red débil.

 

15, el protocolo de comunicación netty es lo.

 

16, billetes usados ​​SpringMVC, ¿cuál es el papel de principio.

 

17, springboot comenzar mecanismo.

 

sistema operativo

1, el sistema Linux que preocupados por lo kernel parámetros, para hablar de usted sabe.

 

2, el modelo de Linux en IO hay varios, lo que significa sus sí.

 

3, y epoll encuesta ¿Cuál es la diferencia.

 

4, que suelen utilizar el comando Linux.

 

5, ver las últimas cinco líneas del archivo con la línea de comandos.

 

6, el proceso de salida de Java que se ejecuta con un solo comando.

 

7, se introdujo el sistema operativo para enhebrar su comprensión del proceso de traspaso.

 

8, la diferencia entre los procesos y los hilos.

 

9, después de la orden de arriba tienen qué, qué papel.

 

10, línea de alta ráfaga de CPU, cómo encontrar el problema.

 

multihilo

1, varios aplicación multiproceso, lo que es seguro para subprocesos.

 

2, el principio volátil, efecto, puede bloquear en su lugar.

 

3, dibujar un hilo de diagrama de estados del ciclo de vida.

 

4, la diferencia entre el sueño y espera.

 

5 distinción, sueño y sueño (0) es.

 

6, la diferencia entre el bloqueo y sincronizada.

 

7. ¿Qué principio sincronizada se utiliza generalmente en cualquier lugar (por ejemplo, la diferencia de tiempo añadido a los métodos estáticos y métodos no estáticos, métodos estáticos y método no estático ejecutados simultáneamente tener un impacto en él), explique los siguientes términos: reordenación, auto bloqueos de giro, desviación de bloqueo, bloqueo de peso ligero, bloqueo de reentrada, justas cerradura, cerraduras injustos, el bloqueo optimista, el bloqueo pesimista.

 

8, que clase de átomos utiliza, cuáles son sus principales sí.

 

9, JUC estudió bajo la cual los servicios públicos de concurrencia, charla sobre el principio.

 

10, utiliza la agrupación de hebras, y si se utiliza, por favor explicar los principios y hablan de newCache y newFixed Cuál es la diferencia, ¿cuál es el significado de cada parámetro del constructor es tal coreSize, maxsize y así sucesivamente.

 

11, apague el grupo de subprocesos que hay varias maneras, la diferencia entre lo que cada sí.

 

12, si hay una interfaz de terceros, hay muchos hilos puede llamar para obtener los datos, ahora hasta el 10 por regulaciones hilos simultáneamente llaman, cómo hacerlo.

 

13, primavera el controlador es un caso único o múltiples de los casos, la forma de garantizar la seguridad de concurrencia.

 

14, tres hilos con una secuencia de tres letras abc ciclo de impresión, tales abcabcabc.

 

15, ThreadLocal utilizado y para qué fines, lo que es el principio, usar el tiempo para prestar atención.

 

16, de manera que si se implementa una lista concurrente seguro, ¿cómo lo haría.

 

17, que las estructuras de datos sin bloqueo, los principios de lo que logran.

18, habla de la espera y notificar mecanismo de sincronización de Java.

19. ¿Qué mecanismo de CAS, ABA cómo resolver el problema.

20, multi-hilo si el hilo enredado en cómo hacerlo.

21, countdowlatch y cyclicbarrier principios internos y el uso, así como las diferencias entre cada otro (como countdownlatch esperan el método y la manera de lograr).

22, por AbstractQueuedSynchronizer conocen, hablan de bloqueo y desbloqueo proceso, la equidad y la cerradura de bloqueo exclusivo diferente.

23, utilizando un métodos estáticos sincronizados y métodos no estáticos de la modificación de cualquier diferencia.

24, y brevemente ConcurrentLinkedQueue LinkedBlockingQueue utilidad y diferencias.

25, el interbloqueo de subproceso causa? Cómo levantar estancamiento hilo.

26, por lo que múltiples hilos (posiblemente máquinas diferentes), es necesario esperar a que la coordinación entre ellos con el fin de completar algunos trabajos, tales preguntan cómo el diseño de programas de coordinación.

27, que se utiliza para leer y bloqueo de escritura en él, lo que es el principio, en qué escenario con el general.

28, abiertas múltiples hilos, si el orden de ejecución de garantía, que tiene varias implementaciones, o cómo asegurar que múltiples hilos están ejecutando el entonces obtener los resultados.

29, las semejanzas y diferencias de las implementaciones de colas de retardo, y la rueda de temporización algoritmo DelayQueue.

 

TCP 与 HTTP

1, HTTP1.0 y HTTP1.1 ¿Cuál es la diferencia.

2, TCP de tres vías y cuatro proceso de agitar, la razón por la falta de conexión a 4 veces, aunque sólo sea para dar la mano dos veces, lo que aparecerá.

3, la diferencia entre el TIME_WAIT y CLOSE_WAIT.

4, hablar de ti conocer varias de respuesta HTTP, tales como 200, 302, 404.

5, al abrir un enlace en el navegador (por ejemplo: http: //www.javastack.cn) cuando el ordenador para hacer lo que los pasos de trabajo.

6, TCP / IP cómo garantizar la fiabilidad, hablar de la estructura de la cabecera TCP.

7, la forma de evitar la caché del navegador.

8, la forma de entender la naturaleza sin estado del protocolo HTTP.

9, brevemente HTTP GET y POST peticiones y distinción formato de paquete.

10, HTTP que método

11, HTTP brevemente formato de mensaje de petición.

12, servicios de larga HTTP es lo que significa

13. ¿Qué es el cifrado HTTPS, hablar de todo el proceso de cifrado y descifrado.

14, HTTP y HTTPS de tres vías Cuál es la diferencia.

15, lo que es la transferencia de bloques.

16 diferencia de sesión y cookies.

 

arquitectura y diseño distribuido

1, con su propio java lograr un LRU.

2, la forma de hacer un número de serie único grupo distribuido.

3, diseñar un sistema de pico durante 30 minutos sin el pago se cerrará automáticamente la transacción.

4, la forma de utilizar Redis zookeeper e implementar bloqueo distribuido? ¿Cuál es la diferencia ventajas y desventajas, lo que va a ser el problema, lo que los escenarios son aplicables. (Extensión: Si conoce redlock, hablar de su algoritmo, donde la controversia)

5, si alguien maliciosamente crear conexiones ilegales, cómo resolver.

6, principio transacciones distribuidas, ventajas y desventajas, cómo utilizar las transacciones distribuidas, la diferencia entre 2pc 3Pc resolver lo problemas, cuáles son los problemas no se han resuelto, la forma de resolver sus propios proyectos en una transacción distribuida se relaciona con la manera de hacer frente a .

7. ¿Qué es la consistencia de hash.

8, ¿cuál es reparador, reparador charla acerca de su comprensión.

9, cómo diseñar una API bien.

10, cómo diseñar construir y mantener una larga relación de 100w.

11, lo que explica el protocolo MESI (coherencia de caché).

12, para hablar de varios algoritmo de hash, ya sabes, puede ser sencilla.

13, ¿cuál es el algoritmo paxos, lo que es un acuerdo Zab.

14, un sistema de documentación en línea, los documentos se pueden editar, cómo evitar que varias personas para editar el mismo documento que actualizarse.

15, sistema en línea de repente se hizo muy lento, ¿cómo encontrar el problema.

16, por lo general, hablar de patrones de diseño utilizados.

17, el principio de Dubbo, y han visto lo que la fuente, la forma en la transferencia de datos, cómo alcanzar la agrupación, balanceo de carga, registro de servicio y el descubrimiento, el reenvío de reintento, fail-fast estrategia es similar.

18 Lo que un proceso de solicitud de RPC Sí. RPC sobre sí mismos para lograrlo, sólo tiene que hablar de principios. RPC para solucionar cualquier problema.

19, usos y modo asíncrono importancia.

20, la programación de sí mismo cómo tener en cuenta algunos principios de diseño, como la apertura y cierre de los principios y aplicaciones en el trabajo

21, bajo la arquitectura de servidor de chat ha estado involucrado en el diseño y el dibujo, para hablar de los problemas encontrados, la forma de resolver

22, cómo controlar la diferencia entre el rendimiento del servidor de aplicaciones, una variedad de formas

23, cómo diseñar un esquema de pago de alta concurrente, cómo diseñar la arquitectura

24, la forma de lograr algoritmo de balanceo de carga que puede ser implementado

25, el uso de Zookeeper, lo que es el principio de elecciones

26, el principio mecanismo del reloj Zookeeper.

26, la aplicación de los principios subyacentes mybatis.

27, considere un programa para lograr countDownLatch entorno distribuido

28, la forma de evitar que los sistemas de back-office solicitud de volver a ejecutar

29, se describe en detalle el proceso de un servicio se publica para el consumo

30, habla de su comprensión de la gestión de servicios

31, cómo hacer la interfaz de idempotencia

32. ¿Cómo hacer la estrategia de limitación de corriente usando una escena algoritmo de cubo y embudo de símbolo

33, ¿cuál es la consistencia de los datos, ¿cómo se entiende la consistencia de los datos.

34, que llama distribuida al servicio, no depende del proveedor de servicios, a continuación, cómo lidiar con el lado del servicio colgar, una gran cantidad de residuos ineficaz de los recursos solicitados, el tiempo sólo si el proveedor de servicio no es de alto rendimiento de cómo hacerlo, si el servicio colgó, a continuación, para un reinicio, cómo hacer el mínimo desperdicio de recursos, la realización del mecanismo entreabierta lo que el caudal Sí.

35, la forma de lograr dubbo llamada generalización, si eres tú, ¿cómo lo hace.

36, habrá una remotos tiempos de espera de llamada, si hacer el control elegante, JDK sale mecanismo que, la forma de lograr.

 

algoritmo

1,10 cien millones de números en los que encontrar un mínimo de 10.

2, hay 100 millones de números, de los cuales dos son duplicados, encontrar rápidamente, tiempo y espacio para ser óptimo.

3,2 cien millones generados aleatoriamente número entero trastorno, para averiguar el valor de tamaño intermedio.

4, no conoce a un (potencialmente grande) de la longitud de la cadena de entrada, un diseño de esquema, la disposición de carácter duplicado pesada.

5, el recorrido del árbol binario.

6, hay 3n + 1 dígitos, de la que se repite la 3n, único que no se repite, la manera de averiguar.

7, escribir una cadena: la función inversa (por ejemplo www.javastack.cn).

8, común algoritmo de ordenación, de descarga rápida, de mezcla, burbujeante. fila rápida complejidad momento óptimo, la complejidad de los peores. optimización de ordenamiento de burbuja.

9, el tiempo de búsqueda binaria ventaja complejidad.

10, se ha construido una buena TreeSet, cómo llevar a cabo el orden inverso.

11, ¿cuál es el árbol B +, B- árboles, las listas de los escenarios de uso reales.

12, una lista de enlace simple, eliminar los datos penúltimas N.

13.200 arreglos ordenados, cada elemento de la matriz 100 que identifican el Top20 elementos.

14, de un solo sentido lista enlazada, mirada de los elementos en el medio.

 

Base de Datos de conocimiento

1, el nivel de aislamiento de la base de datos qué, cuál es su significado es, MySQL nivel de aislamiento predeterminado es lo que es.

2. ¿Cuál es el fantasma lee.

3, motores MYSQL que de almacenamiento, sus ventajas y desventajas.

4, bajo alta concurrencia, cómo hacerlo seguro modificar las mismas filas de datos.

5. ¿Cuáles son cerradura de bloqueo optimista y pesimista es, INNODB estándar de bloqueo de filas cuál de los dos tipos, para explicar su significado.

6. ¿Cuál es el procedimiento general para la optimización de SQL, la forma de ver el plan de ejecución, la manera de entender el significado de cada campo.

7, bloqueos de base de datos tiene, administre un ejemplo de punto muerto, mysql cómo resolver el punto muerto.

8, MySQL de obras de indexación, qué tipo de índice, cómo crear un índice razonable, índice de cómo optimizar.

9, la diferencia entre el índice y el índice no agrupado agregado.

10, seleccione para la actualización es lo significado sería bloqueo de tabla o fila cerraduras u otros.

11, ¿por qué debería Btree conseguir, cómo fue dividida, cuando para dividir, por eso se equilibra.

12. ¿Qué base de datos ÁCIDO Sí.

13, una tabla tiene casi diez millones de datos, CRUD lento, cómo optimizar.

14, Mysql cómo optimizar el recorrido de tabla.

15, la forma de escritura de SQL puede utilizar con eficacia el índice compuesto.

Existe 16, MySQL y en la diferencia.

17, la base de datos auto-incrementales claves primarias posibles problemas.

18, MVCC significado, la forma de lograr.

19, se han realizado proyectos en el África sub-biblioteca encuentro subtabla sin embargo, cómo hacerlo, es útil para el middleware, tales como sharding JDBC, etc., saber cuáles son sus principios.

20, master MYSQL cómo solucionar el retraso.

 

Message Queue

1, la escena utilizando colas de mensajes.

2, la retransmisión del mensaje, las políticas complementarias.

3, la forma de garantizar el mensaje ordenada.

4, que utiliza MQ y otros mq comparar qué ventajas y desventajas, la conexión MQ es seguro para hilos para usted, lo que su empresa arquitectura de servicios MQ.

5, cómo asegurar que los datos no se pierden sistema MQ.

6, RabbitMQ cómo lograr clúster de alta disponibilidad.

7, kafka razones para el alto rendimiento.

8, y la otra cola de mensajes diferencia kafka, de cómo lograr el kafka de sincronización primario.

9, el uso de mq cómo lograr consistencia eventual.

10, mediante kafka no han encontrado ningún problema, la forma de resolver.

11, MQ repitió el consumo puede ocurrir, cómo evitar, cómo hacerlo idempotente.

12, MQ mensaje de latencia cómo hacer frente a, ¿qué mensaje se puede establecer el tiempo de expiración, la expiración cómo se suele tratar.

 

cache

1. ¿Cuáles son las estrategias de caché comunes, cómo hacer el almacenamiento en caché (como Redis) y DB donde consistencia de los datos, lo que se utiliza en el sistema de almacenamiento en caché de proyectos, cómo diseñar la

2, la forma de evitar el almacenamiento en caché y la avalancha avería.

3, de cómo actualizar los datos de la caché caducado diseño.

4, la lista de las operaciones relacionadas con la estructura REDIS.

5, estructuras de datos Redis son lo.

6, Redis se utiliza para prestar atención a lo que, hablar de modo de persistencia, las aplicaciones y las ventajas y desventajas configuración de la memoria, grupo, estrategias.

7, la redis2 diferencia y redis3, redis3 mecanismo de comunicación interna.

8, la corriente ReDiS grupos que se juegan los juegos, las ventajas y desventajas de cada escena.

9, Memcache principio, que se ajustan a los datos en la memoria caché.

10 diferencia, Redis y gestión de memoria memcached.

11, Redis cómo resolver el problema de la competencia concurrente, CAS comprensión de transacción Redis operarlo.

12, Redis algoritmo de elección y el proceso es similar.

13, la diferencia entre el mecanismo de persistencia Redis, AOF y la RDB.

14, REDIS racimos cómo sincronizar datos

15, lo que optimiza el funcionamiento de Redis saben.

16, reids principales principios del mecanismo de replicación.

17, lo que sí Redis enhebrar modelo.

18, considere un programa diseñado para controlar un tamaño de búfer de caché local de la adaptación automática en general.

19, la forma de tratar el uso de la memoria caché (caché local, caché centralizado), destacando la caché local y el almacenamiento en caché centralizada y las ventajas y desventajas.

20, las precauciones caché local cuando se utilizan al mismo tiempo.

 

Buscar

1, elasticsearch saber cuánto para hablar de su empresa it arquitectura de cluster, el tamaño de los datos de índice, número de fragmentos, así como algunos medios de sintonización

2. ¿Qué Elasticsearch invertida Si Indice.

3, los datos del índice Elasticsearch más cómo hacer, cómo ajustar el despliegue.

4, elasticsearch es la forma de lograr la elección maestro

5, una descripción detallada de lo proceso de indexación de documentos Elasticsearch

6, descripción detallada sobre el proceso de búsqueda Elasticsearch

7, Elasticsearch al despliegue, los métodos de optimización, que se han fijado para Linux?

8. ¿Qué lucence estructura interna Sí. 

Supongo que te gusta

Origin www.cnblogs.com/hericwan/p/12635606.html
Recomendado
Clasificación