Os pontos principais das entrevistas de microsserviço, se você não entender, eu o aconselho a aprender mais!

1. Qual é o uso das anotações WebMvcTest em aplicativos Spring MVC?

@WebMvcTest(value = ToTestController.class, secure = false):

No caso em que o destino do teste se concentra apenas em componentes Spring MVC, a anotação WebMvcTest é usada para testar a unidade de aplicativos Spring MVC. No instantâneo mostrado acima, queremos apenas iniciar o ToTestController. Quando este teste de unidade é executado, todos os outros controladores e mapas não serão iniciados.

2. Você pode dar alguns pontos sobre descanso e microsserviços?

Embora você possa implementar microsserviços de várias maneiras, REST sobre HTTP é uma maneira de implementar microsserviços. REST também pode ser usado para outros aplicativos, como aplicativos da web, design de API e aplicativos MVC, para fornecer dados de negócios.

Microsserviços é uma arquitetura na qual todos os componentes do sistema são colocados em componentes separados, que podem ser construídos, implantados e estendidos separadamente. Certos princípios e práticas recomendadas de microsserviços ajudam a construir aplicativos resilientes.

Resumindo, você pode dizer que REST é um meio para construir microsserviços.

3. Quais são os diferentes tipos de teste de microsserviço?

Ao usar microsserviços, o teste se torna muito complicado devido a vários microsserviços trabalhando juntos. Portanto, o teste é dividido em diferentes níveis.

· Na parte inferior, temos testes orientados para a tecnologia, como testes de unidade e testes de desempenho. Eles são totalmente automatizados.

· No nível intermediário, conduzimos testes exploratórios, como teste de estresse e teste de usabilidade.

· No nível superior, temos muito poucos testes de aceitação. Esses testes de aceitação ajudam as partes interessadas a compreender e verificar a funcionalidade do software.

4. O que você sabe sobre transações distribuídas?

Transação distribuída se refere a qualquer situação em que um único evento causa mutações em duas ou mais fontes de dados separadas que não podem ser enviadas atomicamente. No mundo dos microsserviços, fica mais complicado porque cada serviço é uma unidade de trabalho e, na maioria das vezes, vários serviços devem trabalhar juntos para tornar o negócio bem-sucedido.

5. O que é Idempotência e onde é usado?

Idempotência é a propriedade de poder fazer algo duas vezes de forma que o resultado final permaneça o mesmo, ou seja, como se fosse feito apenas uma vez.

Uso: Use Idempotência em serviços remotos ou fontes de dados para que, quando receber instruções várias vezes, só processe as instruções uma vez.

6. O que é um contexto limitado?

O contexto limitado é o modo principal do design orientado por domínio. O foco do departamento de design estratégico DDD é lidar com grandes modelos e equipes. O DDD lida com grandes modelos, dividindo-os em diferentes contextos delimitados e esclarecendo seus inter-relacionamentos.

7. O que é autenticação de dois fatores?

A autenticação de dois fatores permite a autenticação de segundo nível para o processo de login da conta.

Insira a descrição da imagem aqui

                                 图1: 双因素认证的表示 – 微服务访谈问题

Portanto, supondo que o usuário deve inserir apenas um nome de usuário e uma senha, isso é considerado autenticação de fator único.

8. Quais são os tipos de credencial para autenticação de dois fatores?

Os três tipos de credenciais são:

Insira a descrição da imagem aqui

                                     图 2: 双因素认证的证书类型 – 微服务面试问题

9. O que é um certificado de cliente?

Um certificado digital usado pelo sistema do cliente para enviar uma solicitação autenticada a um servidor remoto é chamado de certificado do cliente. Os certificados do cliente desempenham um papel muito importante em muitos projetos de autenticação mútua e fornecem uma forte garantia para a identidade do solicitante.

10. Qual é o propósito do PACT na arquitetura de microsserviço?

PACT é uma ferramenta de código aberto que permite que a interação entre provedores de serviços de teste e consumidores seja isolada de contratos, melhorando assim a confiabilidade da integração de microsserviços.

Uso em microsserviços

· Usado para implementar contratos direcionados ao consumidor em microsserviços.

· Testar contratos direcionados ao consumidor entre consumidores e provedores de microsserviços.

Ver os próximos lotes

11. O que é OAuth?

OAuth significa Protocolo de Autorização Aberta. Isso permite o acesso aos recursos do proprietário do recurso habilitando aplicativos cliente (como provedores de terceiros Facebook, GitHub, etc.) no serviço HTTP. Portanto, você pode compartilhar recursos armazenados em um site com outro site sem usar suas credenciais.

12. Qual é a lei de Conway?

“Qualquer organização (amplamente definida) que projeta um sistema produzirá um projeto cuja estrutura é uma cópia da estrutura de comunicação da organização.” - Mel Conway
Insira a descrição da imagem aqui

                                 图 13: Conway 定律的表示 – 微服务访谈问题

A lei basicamente tenta transmitir o fato de que, para que o módulo de software funcione, toda a equipe deve se comunicar bem. Portanto, a estrutura do sistema reflete as fronteiras sociais da organização que o produziu.

13. O que você sabe sobre os testes de contrato?

De acordo com Martin Flower, o teste de contrato é um teste realizado no limite de um serviço externo para verificar se ele atende ao contrato esperado do serviço ao consumidor.

Além disso, o teste de contrato não testa o comportamento do serviço em profundidade. Mais precisamente, ele testa se a entrada e a saída da chamada de serviço contém os atributos necessários e o atraso de resposta, e se a taxa de transferência está dentro do limite permitido.

14. O que é teste de microsserviço de ponta a ponta?

O teste de ponta a ponta verifica se todos os processos do fluxo de trabalho estão funcionando corretamente. Isso garante que o sistema como um todo funcione em conjunto e atenda a todos os requisitos.

Em termos leigos, você pode dizer que o teste de ponta a ponta é um tipo de teste que testa tudo após um determinado período de tempo.

Insira a descrição da imagem aqui

                                 图 14:测试层次 – 微服务面试问题

15. Qual é a finalidade do Container em microsserviços?

Os contêineres são uma ótima maneira de gerenciar aplicativos baseados em microsserviços para desenvolvê-los e implantá-los individualmente. Você pode encapsular microsserviços em uma imagem de contêiner e suas dependências e, em seguida, usá-lo para substituir microsserviços para instâncias sob demanda sem nenhum trabalho adicional.

Insira a descrição da imagem aqui

                                 图 15: 容器的表示及其在微服务中的使用方式 – 微服务访谈问题

16. O que é DRY na arquitetura de microsserviço?

DRY significa não se repetir. Basicamente, promove o conceito de reutilização de código. Isso leva ao desenvolvimento e bibliotecas compartilhadas, o que por sua vez leva a um acoplamento forte.

17. O que é um contrato orientado ao consumidor (CDC)?

Esse é basicamente um padrão para desenvolver microsserviços para que possam ser usados ​​por sistemas externos. Quando lidamos com microsserviços, existe um provedor específico que os cria e um ou mais consumidores que usam os microsserviços.

Normalmente, o provedor especifica a interface no documento XML. Mas em um contrato orientado para o consumidor, cada consumidor de serviço comunica a interface esperada pelo provedor.

18. Qual é a função da API Web e RESTful em microsserviços?

A arquitetura de microsserviço é baseada em um conceito em que todos os serviços devem ser capazes de interagir entre si para construir funções de negócios. Portanto, para isso, todo microsserviço deve ter uma interface. Isso torna a API da Web um ativador muito importante de microsserviços. A API RESTful é baseada no princípio de rede aberta da Web e fornece o modelo mais razoável para construir a interface entre os vários componentes da arquitetura de microsserviço.

19. O que você sabe sobre monitoramento semântico na arquitetura de microsserviço?

O monitoramento semântico, também conhecido como monitoramento abrangente, combina testes automatizados com aplicativos de monitoramento para detectar fatores de falha de negócios.

20. Como conduzimos testes interfuncionais?

O teste multifuncional é a verificação de requisitos não funcionais, ou seja, requisitos que não podem ser implementados como funções comuns.

Conclusão e acompanhamento

Com a maturidade gradual da pilha de tecnologia distribuída, nos últimos anos, mais e mais sistemas e campos foram projetados com arquitetura de microsserviço na indústria, incluindo finanças, e-commerce, transmissão ao vivo, logística, marketing, compras, manufatura, etc., tanto no campo da Internet quanto no tradicional campo.
Recentemente, é a melhor hora para encontrar um emprego. Coletei algumas perguntas de entrevistas de grandes fabricantes e os dados mais recentes este ano (2020). A seguir estão algumas capturas de tela dos dados (todos os dados foram integrados em documentos e pdf compactado e empacotado) .
Se você tem um amigo que precisa, você pode clicar aqui para obter as informações, código: qf

Insira a descrição da imagem aqui

Acho que você gosta

Origin blog.csdn.net/SpringBoot_/article/details/108598404
Recomendado
Clasificación