En segundo lugar, es necesario tener un conocimiento exhaustivo de la tecnología de Internet. Desde el nivel inferior, al menos debe tener un conocimiento profundo de mysql, redis, mongodb, nginx, tomcat, rpc, jms, etc. Si me preguntas cuánto necesitas saber, puedo darte una gran idea. Primero, para MySQL, debe comprender la configuración de parámetros comunes y cómo elegir un motor de almacenamiento. También es necesario comprender los motores de indexación comunes y saber cómo elegirlos. Sepa cómo diseñar tablas, cómo optimizar SQL y cómo ajustar según los planes de ejecución. Avanzado necesitas hacer el diseño y optimización de subbases de datos y subtablas. Generalmente, las bases de datos de las empresas de Internet están separadas de la lectura y la escritura, y se dividirán vertical y horizontalmente, por lo que también se incluye este componente de experiencia. Entonces redis y mongodb necesitan comprender los principios y ajustar los parámetros, mientras que nginx y tomcat son casi necesarios para JAVA Internet. De hecho, tiene algo que ver con la elección de la pila tecnológica por parte de Alibaba. En cuanto a rpc, hay mucho por hacer. Debe tener un conocimiento profundo de varios protocolos de red, tecnologías de serialización, SOA, etc. El marco rpc ampliamente utilizado en China ahora es dubbo, que usted mismo puede buscar. En cuanto a jms, al menos debes comprender los principios. Generalmente, las personas que no están especializadas en el desarrollo de sistemas middleware y sistemas de soporte no necesitan conocer demasiados detalles. activeMQ y kafka son comúnmente utilizados por empresas nacionales. Todo lo que puedas decirme lo he investigado en profundidad. Creo que Ali p6 está bien. Por supuesto, esto depende de su desempeño en la entrevista en términos de sus habilidades arquitectónicas.
El tercero es la consideración de las capacidades de programación, las ideas de programación, las capacidades de los algoritmos y las capacidades arquitectónicas. En primer lugar, creo que los programadores de 2W tienen requisitos de algoritmos relativamente bajos. Los más avanzados son los árboles rojo-negro, pero los algoritmos básicos para ordenar y consultar siguen siendo buenos. Las ideas de programación son imprescindibles. Me gustaría preguntarle sobre AOP y COI. Al menos lo sabes. No dices que has utilizado todos los patrones de diseño, pero también puedes comprender profundamente 14 o 15 tipos. Creo que no es fácil evaluar la capacidad de programación, pero es fácil pedirle a un usuario de 2000 W que clasifique por nombre y edad. Finalmente, está la capacidad de la arquitectura. Esto no significa que deba diseñar un sistema de alta concurrencia, al menos le permite crear un sistema de venta flash, y el diseño para evitar solicitudes repetidas se puede completar rápidamente sin usarlo.