2021 mais recente resumo de compartilhamento da experiência facial Meituan / Byte / Tencent

Anos atrás, por causa da recorrência da epidemia, fiquei um tempo em casa antes, afinal era mais de um mês! No final, eu saí no final de fevereiro e coloquei muitos currículos, entrevistei todos os dias para entrevistas. Mas, na verdade, a chamada fortuna se acumula com muito trabalho. Minha memória é relativamente boa. Eu memorizei e não foi difícil. Memorizei 1.000 perguntas . . . (Nota: vou compartilhar as 1000 perguntas no final do artigo)

Vendo que os ouro três prata quatro ainda estão rolando, pensando que o exército de entrevistas pode estar chegando em alguns dias, então eu compilei algumas entrevistas nos últimos dois dias. Hoje vou mostrar para vocês "Meituan + ByteDance + Tencent" Estes três empresas têm um, dois ou três lados, e acho que cada um pode testar por si mesmo onde conseguirá cumprir.

Primeiro olhe para Meituan

No caso da Meituan, por três lados, o conhecimento do conteúdo de design é bastante amplo, incluindo MySQL, Redis, Kafka, threads, algoritmos, +, volatile, threads, simultaneidade, padrões de design, etc ...

O último "Meituan + Byte + Tencent" uma, duas, três perguntas, desafie para que lado você pode ir?

 

Um problema colateral: MySQL + Redis + Kafka + thread + algoritmo

  • O MySQL sabe quais mecanismos de armazenamento e suas diferenças
  • Sob quais circunstâncias o índice mysql falhará
  • Cenários de otimização do mysql no projeto, resolução lenta da consulta, etc.
  • Quais índices o mysql tem e qual é o modelo de índice
  • Qual é a diferença entre a árvore B e a árvore B +? Por que não usar árvores vermelhas e pretas
  • Como fazer a sincronização mestre-escravo mysql
  • A diferença entre bloqueio otimista e bloqueio pessimista?
  • log binlog
  • Quais são os métodos de persistência do Redis e como escolher?
  • Qual é o processo de sincronização redis mestre-escravo?
  • Como o zset do redis é implementado?
  • Estratégia de expiração da chave Redis
  • Como o hashmap é implementado? Por que usar árvores vermelhas e pretas em vez de árvores binárias balanceadas? Por que ele se transforma em uma árvore vermelha e preta quando a lista vinculada é maior que 8 em 1.8? Por que o thread do HashMap não é seguro?
  • Como implementar hashmap thread-safe?
  • A diferença entre select e epoll
  • A diferença entre http e https, como adicionar criptografia?
  • Explicação detalhada do algoritmo de jangada
  • Como Kafka escolhe o mestre?
  • Como Kafka garante que a produção e o consumo estejam sincronizados?
  • Como Kafka garante que nenhuma mensagem será perdida
  • Como o redis garante alta disponibilidade
  • Algoritmo: Corte a corda (solução gananciosa ou recursiva)
  • Algoritmo: atravesse a pré-ordem e a ordem do meio e reconstrua a árvore binária

Dois lados (volátil + thread + simultaneidade + algoritmo + padrão de design)

  • Auto apresentação
  • Fale sobre o projeto (o projeto não tem destaques, apenas pergunte o básico)
  • Qual é o papel do volátil? A implementação subjacente? Cenários em que o reordenamento é proibido? Qual é o papel do volátil no modo singleton?
  • Como construir o pool de threads, seus parâmetros, estratégia de saturação?
  • Qual é a diferença entre fair lock e unfair lock? Por que o fair lock é ineficiente?
  • Quais são os status dos tópicos?
  • Qual é a diferença entre threads, processos e corrotinas?
  • Idéia de AQS do queuer síncrono e bloqueio com base na realização de AQS.
  • Introdução às ferramentas de simultaneidade CountDownLatch, CyclicBarrier, Semaphore
  • Vários tipos de pool de threads implementados pela classe Execuors, como retornar no final?
  • Modo singleton escrito à mão
  • Modelo de produtor consumidor escrito à mão
  • Algoritmo: Lista reversa unicamente vinculada
  • Algoritmo: dada uma string contendo apenas '(' e ')', encontre o comprimento da substring mais longa contendo parênteses válidos.

Três lados

Deste lado não perguntei nada, falei principalmente sobre a vida e os planos para os próximos 3 anos. . . . . .

O segundo é byte beating

O último "Meituan + Byte + Tencent" uma, duas, três perguntas, desafie para que lado você pode ir?

 

Um lado: algoritmo + banco de dados + transação + rede

  • Auto apresentação
  • Introdução ao projeto (sem destaques, ainda pergunte o básico)
  • O princípio e a complexidade de tempo da classificação de heap, se é estável, os piores e os piores cenários.
  • Quais são os métodos da classe Object?
  • Processo de resolução de DNS / navegador digite uma url, pressione enter, todo o processo da rede
  • A diferença entre HTTP e HTTPS
  • Como o UDP consegue uma transmissão confiável
  • Apresente https, como criptografar, algoritmo de criptografia
  • As vantagens e desvantagens dos índices de banco de dados e quando os índices de banco de dados falham
  • O nível de isolamento da transação?
  • Leituras sujas, leituras não repetíveis e leituras fantasmas do banco de dados
  • Algoritmo: Recebendo água da chuva: Dados n inteiros não negativos que representam o mapa de altura de cada coluna com uma largura de 1, calcule quanta água da chuva pode ser recebida pelas colunas organizadas desta forma.
  • Algoritmo: Queen N

Dois lados: Kafka + redis + algoritmo

  • Quais são as características do Kafka?
  • Você conhece o particionador, serializador e interceptor no Kafka? Qual é a ordem de processamento entre eles?
  • Rebalanceamento do consumidor (alta disponibilidade, escalabilidade)
  • Quais cenários causarão consumo de vazamento de mensagens?
  • Como garantir que as mensagens não sejam consumidas novamente (idempotência)
  • KafkaConsumer não é thread-safe, então, como atingir o consumo multi-threaded?
  • Quantos encadeamentos são usados ​​no cliente produtor Kafka para processamento? O que eles são?
  • O fluxo de trabalho de consumidores e produtores:
  • O número de partições de tópico pode ser aumentado?
  • Algoritmo: a soma máxima do caminho na árvore binária
  • Algoritmo: Dado o ponteiro principal da lista unida individualmente e o valor de um nó a ser excluído, defina uma função para excluir o nó.

Três lados: Redis + Spring + Dubbo + algoritmo

  • Como funciona o redis Zset?
  • A diferença entre sentinela e cluster e seus respectivos cenários aplicáveis
  • Processo de sincronização do cluster do Redis
  • Por que o redis single thread é rápido?
  • cache de primeiro nível mybatis e cache de segundo nível
  • Como a mola resolve dependências circulares?
  • O princípio da mola AOP.
  • O ciclo de vida da primavera.
  • Código-fonte do processo de referência e exposição do serviço Dubbo, estratégia de balanceamento de carga e mecanismo de tolerância a falhas
  • Quais problemas foram encontrados no projeto. (Desculpe, meu trabalho é adicionar, excluir, modificar e verificar, não toquei nos problemas relacionados)
  • Algoritmo: espelho da árvore binária
  • Algoritmo: imprimir árvore binária de cima para baixo

Última olhada na Tencent

Tencent também pediu muito desses três lados, então, por favor, pergunte a si mesmo por suas bênçãos.

O último "Meituan + Byte + Tencent" uma, duas, três perguntas, desafie para que lado você pode ir?

 

um lado

  • Como projetar um sistema de espigões?
  • Rastreando 10 milhões de artigos por dia, como fazer design? Como coordenar em paralelo? Como 100 servidores podem ter a carga balanceada tanto quanto possível?
  • Você já usou o serviço de nome de domínio curto? Você pode me dizer uma coisa?
  • As características dos microsserviços, como realizar a descoberta de serviços e o balanceamento de carga
  • Como solucionar problemas online? (Apoiado, nunca remou)
  • Princípios de probabilidade bayesiana
  • Como implementar o algoritmo round-robin ponderado de balanceamento de carga
  • Se o número de usuários aumentar significativamente, como otimizar?
  • Algoritmo Paxos (este algoritmo é muito difícil, não o entendi quando o aprendi)
  • Quais blogs você costuma ler, quais livros você leu recentemente

Dois lados

  • Auto apresentação
  • Introdução ao Projeto
  • 5 tipos de redis e seus princípios de implementação
  • Como usar o redis Zset para implementar a fila de atraso?
  • Como o redis consegue alta disponibilidade?
  • penetração de cache redis, quebra de cache, avalanche de cache
  • Implementação do filtro Bloom
  • Como garantir a consistência de gravação dupla entre mysql e redis?
  • Quais são os algoritmos de balanceamento de carga?
  • Como a descoberta de serviço é alcançada?
  • Como o fusível é realizado?
  • Algoritmo: soma máxima de submatrizes consecutivas
  • Fale sobre CAP e BASE distribuídos?
  • O que é consistência forte?
  • Soluções para transações distribuídas?
  • TCC (tipo de dois estágios, tipo de compensação)
  • Como implementar o gerador de id?
  • Como julgar se um gráfico tem um anel?
  • Algoritmo Hash consistente e sua aplicação
  • Problema de mochila

Três lados

  • Auto apresentação
  • Introdução ao Projeto
  • Como implementar o redis zSet?
  • Mecanismo de persistência do Redis.
  • Explicação do tipo Redis Hash, repetição progressiva.
  • Princípio do HashMap, qual é o processo de uma operação put?
  • O nginx foi configurado sozinho (este é o único que operei manualmente, este não é um back)
  • Cenários de uso do nginx.
  • O que é distribuído, o que é cluster e qual é a diferença?
  • Em um ambiente distribuído baseado em dubbo, geralmente define o tempo limite para o provedor ou consumidor?
  • Quais são as estratégias de balanceamento de carga em dubbo?
  • Chamada assíncrona da interface? Como configurar? resultado em execução?
  • Fale sobre a solução de cluster de consumidor em sistema baseado em dubbo?
  • O mysql é um cluster ou um único nó? O número máximo de conexões, qual é a quantidade aproximada de dados na maior tabela?
  • Quais são os principais modos de replicação mestre-escravo do mysql?
  • índice mysql, árvore B +, por que não usar árvore vermelho-preto?
  • Como dividir o banco de dados vertical e horizontalmente.
  • Configurações de sessão distribuída
  • IO, BIO, NIO, a diferença entre bloqueio e não bloqueio?
  • Design idempotente de interface distribuída (o pagamento não pode ser deduzido repetidamente)
  • Algoritmo: número de pesquisa binária e lista duplamente vinculada (isso é bobo)
  • Algoritmo: a substring mais longa sem caracteres repetidos
  • Algoritmo: classificação rápida manuscrita, classificação por inserção, classificação por bolha e análise da complexidade do tempo e do espaço e sua estabilidade

final

Olhando para as perguntas um-dois-três da entrevista de Perfect Group, Byte e Tencent, você acha que há muitas perguntas? Talvez tenhamos que começar o modelo de entrevista de fazer foguetes e parafusos de trabalho para nos preparar para a próxima entrevista.

No início, mencionei que memorizei 1.000 perguntas, que ainda são um pouco úteis. Eu li e descobri que a maioria das perguntas acima pode ser encontrada nas perguntas que recito. Portanto, hoje vou compartilhar com vocês a Internet. 1.000 perguntas da entrevista para engenheiros .

Nota: Não importa o que eu diga 1000 perguntas de entrevistas na Internet ou algoritmos e estruturas de dados mencionados mais tarde, mais padrões de design e notas de estudo Java, etc., podem ser livres para compartilhar com todos os nossos amigos, o trabalho de encaminhá-lo, clique no portal para receber! !

O último "Meituan + Byte + Tencent" uma, duas, três perguntas, desafie para que lado você pode ir?

1000 perguntas da entrevista para engenheiros da Internet

E da perspectiva dos três acima, algoritmos e estruturas de dados são indispensáveis , então eu sugiro que você possa ir para o "Guia de Entrevista de Código do Programador IT Famous Enterprise Algorithms and Data Structures" por Zuo Chengyun. Optimal Solution " , existem quase 200 perguntas clássicas da entrevista de código que realmente apareceram .

O último "Meituan + Byte + Tencent" uma, duas, três perguntas, desafie para que lado você pode ir?

Parte do tópico

O último "Meituan + Byte + Tencent" uma, duas, três perguntas, desafie para que lado você pode ir?

Parte do tópico

O resto são como padrões de design. Recomenda-se dar uma olhada nos seguintes 4 PDFs (eu organizei o editor, clique no portal para recebê-lo !!)

O último "Meituan + Byte + Tencent" uma, duas, três perguntas, desafie para que lado você pode ir?

Padrões de design

Mais notas de estudo da entrevista Java são as seguintes: Com relação à entrevista, subdividirei adicionalmente Java básico-intermediário-avançado entrevista + análise, notas de ajuste e assim por diante. . .

O último "Meituan + Byte + Tencent" uma, duas, três perguntas, desafie para que lado você pode ir?

Mais notas de estudo de entrevista em Java

Se você também estiver interessado nos PDFs e nas notas de todos os estudos de entrevistas em Java mencionados acima, o editor pode compartilhá-los com você gratuitamente.

Preste atenção na forma de obtê-lo gratuitamente: basta clicar no portal ! !

Acho que você gosta

Origin blog.csdn.net/bieber007/article/details/115211910
Recomendado
Clasificación