Top 25 domande e risposte ai colloqui sui microservizi

Anonim

Scarica il pdf

1) Spiegare l'architettura dei microservizi

Microservice Architecture è uno stile di sviluppo architettonico che costruisce un'applicazione come una raccolta di piccoli servizi autonomi sviluppati per un dominio aziendale.

2) Nomina tre strumenti comunemente usati per Microservices

  • Wiremock, 2.) Docker e 3.) Hysrix sono importanti strumenti di microservizi.

3) Cos'è l'architettura monolitica? L'architettura monolitica è come un grande contenitore in cui tutti i componenti software di un'applicazione sono riuniti in un unico pacchetto.

4) Quali sono i vantaggi dei microservizi?

Ecco alcuni vantaggi significativi dell'utilizzo dei microservizi:

  • Diversità tecnologica, e., I microservizi possono combinarsi facilmente con altri framework, librerie e database
  • L'isolamento dei guasti, ad esempio, un guasto del processo non dovrebbe arrestare l'intero sistema.
  • Maggiore supporto per team più piccoli e paralleli
  • Distribuzione indipendente
  • Riduzione dei tempi di distribuzione

5) Cos'è Spring Cloud?

Spring cloud è un software di integrazione che si integra con sistemi esterni. Consente al framework di microservizi di creare applicazioni che eseguono quantità limitate di elaborazione dei dati.

6) Discutere gli usi di report e dashboard nell'ambiente di Microservices

Report e dashboard aiutano nel monitoraggio e nella manutenzione dei microservizi. Tonnellate di strumenti di monitoraggio delle applicazioni aiutano in questo.

7) Quali sono le principali differenze tra microservizi e architettura monolitica?

Microservizi Architettura monolitica
L'avvio del servizio è veloce L'avvio del servizio richiede tempo
I microservizi sono un'architettura debolmente accoppiata. L'architettura monolitica è per lo più strettamente accoppiata.
Le modifiche apportate in un singolo modello di dati non influiscono sugli altri microservizi. Qualsiasi modifica nel modello di dati influisce sull'intero database
I microservizi si concentrano sui prodotti, non sui progetti Monolitico pone l'accento sull'intero progetto

8) Quali sono le sfide affrontate durante l'utilizzo dei microservizi?

  • I microservizi fanno sempre affidamento l'uno sull'altro. Pertanto, hanno bisogno di comunicare tra loro.
  • Poiché è un sistema distribuito, è un modello fortemente coinvolto.
  • Se utilizzi l'architettura Microservice, devi essere pronto per il sovraccarico delle operazioni.
  • Occorrono professionisti qualificati per supportare microservizi distribuiti in modo eterogeneo.

9) In quali casi l'architettura di microservizi è più adatta?

L'architettura dei microservizi è più adatta per desktop, web, dispositivi mobili, Smart TV, dispositivi indossabili, ecc.

10) Dimmi il nome di alcune aziende famose che utilizzano l'architettura Microservice

La maggior parte dei siti Web su larga scala come Twitter, Netflix, Amazon, sono passati da un'architettura monolitica a un'architettura di microservizi.

11) Quali sono le caratteristiche dei Microservizi?

  • Framework di messaggistica essenziali
  • Governance decentralizzata
  • Facile automazione dell'infrastruttura
  • Progettare per il fallimento
  • Automazione delle infrastrutture

12) Cos'è RESTful?

I servizi Web REST (Representational State Transfer) / RESTful sono uno stile architettonico che aiuta i sistemi di computer a comunicare su Internet. Questi servizi Web semplificano la comprensione e l'implementazione dei microservizi.

13) Spiegare tre tipi di test per microservizi? In Microservice Architecture i test sono suddivisi in tre grandi categorie:

  • Nel test di livello inferiore, possiamo eseguire un test generale come performance e unit test. Questi tipi di test sono completamente automatizzati.
  • A livello intermedio, possiamo eseguire test esplorativi come gli stress test e i test di usabilità.
  • Al livello più alto, possiamo condurre test di accettazione che sono per lo più meno numerosi. Aiuta anche le parti interessate a conoscere le diverse funzionalità del software.

14) Cosa sono i certificati client?

I certificati client sono un certificato digitale utilizzato per effettuare richieste autenticate a un server remoto. È definito come certificato client.

15) Spiegare l'uso di PACT nell'architettura dei microservizi?

È uno strumento open source che consente di testare le interazioni tra fornitori di servizi e consumatori. Tuttavia, è separato dal contratto stipulato. Ciò aumenta l'affidabilità delle applicazioni Microservices.

16) Qual è il significato di OAuth?

OAuth significa protocollo di autorizzazione aperto. Questo protocollo consente di accedere alle applicazioni client su HTTP per provider di terze parti GitHub, Facebook, ecc. Ti aiuta a condividere le risorse archiviate su un sito con un altro sito senza la necessità delle loro credenziali.

17) Che cos'è il test end-to-end dei microservizi?

I test end-to-end convalidano il corretto funzionamento di ogni processo nel flusso di lavoro. Garantisce inoltre che il sistema funzioni insieme nel suo insieme e soddisfi tutti i requisiti.

18) Perché i container vengono utilizzati nei microservizi?

I contenitori sono il metodo più semplice ed efficace per gestire l'applicazione basata su microservizi. Ti aiuta anche a sviluppare e distribuire individualmente. Docker ti consente anche di incapsulare il tuo microservizio in un'immagine del contenitore insieme alle sue dipendenze. Microservice può utilizzare questi elementi senza ulteriori sforzi.

19) Qual è il significato del monitoraggio semantico nell'architettura dei microservizi?

Il monitoraggio semantico combina i test automatizzati con il monitoraggio dell'applicazione. Ti consente di scoprire i motivi per cui la tua attività non sta ottenendo maggiori profitti.

20) Cos'è un CDC?

CDC è un contratto basato sul consumatore. È un modello per lo sviluppo di microservizi in modo che i sistemi esterni possano utilizzarli.

21) A cosa serve Docker?

Docker offre un ambiente contenitore che può essere utilizzato per ospitare qualsiasi applicazione. Questa applicazione software e le dipendenze che la supportano sono strettamente impacchettate insieme.

22) Cosa sono le estensioni reattive nei microservizi?

Le estensioni reattive sono anche chiamate Rx. È un modello di progettazione che consente di raccogliere risultati chiamando più servizi e quindi compilare una risposta combinata. Rx è uno strumento popolare nei sistemi distribuiti che funziona esattamente al contrario dei flussi legacy.

23) Spiegare il termine "monitoraggio continuo".

Il monitoraggio continuo è un metodo utilizzato per cercare problemi di conformità e rischi associati all'ambiente operativo e finanziario di un'azienda. Contiene umani, processi e sistemi di lavoro che supportano operazioni efficienti ed effettive.

24) Come comunicano tra loro i micro-servizi indipendenti?

Dipende dalle esigenze del tuo progetto. Tuttavia, nella maggior parte dei casi, gli sviluppatori utilizzano HTTP / REST con protocollo JSON o Binary. Tuttavia, possono utilizzare qualsiasi protocollo di comunicazione.