25 najpopularniejszych pytań i odpowiedzi do wywiadów dotyczących mikrousług

Anonim

ściągnij PDF

1) Wyjaśnij architekturę mikrousług

Architektura mikrousług to architektoniczny styl rozwoju, który tworzy aplikację jako zbiór małych autonomicznych usług opracowanych dla domeny biznesowej.

2) Wymień trzy powszechnie używane narzędzia dla mikrousług

  • Wiremock, 2.) Docker i 3.) Hysrix są ważnymi narzędziami mikrousług.

3) Co to jest architektura monolityczna? Architektura monolityczna jest jak duży kontener, w którym wszystkie komponenty oprogramowania aplikacji są umieszczone w jednym pakiecie.

4) Jakie są zalety mikrousług?

Oto kilka istotnych zalet korzystania z mikrousług:

  • Różnorodność technologii, np. Mikrousługi, można łatwo łączyć z innymi frameworkami, bibliotekami i bazami danych
  • Izolacja błędów, np. Awaria procesu nie powinna powodować awarii całego systemu.
  • Większe wsparcie dla mniejszego i równoległego zespołu
  • Niezależne wdrożenie
  • Skrócenie czasu wdrożenia

5) Co to jest Spring Cloud?

Spring cloud to oprogramowanie integracyjne, które integruje się z systemami zewnętrznymi. Pozwala platformie mikrousług na tworzenie aplikacji, które wykonują ograniczone ilości przetwarzania danych.

6) Omów zastosowania raportów i pulpitów nawigacyjnych w środowisku mikrousług

Raporty i pulpity nawigacyjne pomagają w monitorowaniu i utrzymaniu mikrousług. Pomaga w tym mnóstwo narzędzi do monitorowania aplikacji.

7) Jakie są główne różnice między mikrousługami a architekturą monolityczną?

Mikrousługi Architektura monolityczna
Uruchomienie usługi jest szybkie Uruchomienie usługi wymaga czasu
Mikrousługi są luźno powiązaną architekturą. Architektura monolityczna jest w większości ściśle powiązana.
Zmiany wprowadzone w jednym modelu danych nie mają wpływu na inne mikrousługi. Wszelkie zmiany w modelu danych wpływają na całą bazę danych
Microservices koncentruje się na produktach, a nie projektach Monolit położył akcent na cały projekt

8) Jakie są wyzwania związane z korzystaniem z mikrousług?

  • Mikrousługi zawsze polegają na sobie nawzajem. Dlatego muszą się ze sobą komunikować.
  • Ponieważ jest to system rozproszony, jest to model mocno zaangażowany.
  • Jeśli używasz architektury mikrousług, musisz być przygotowany na obciążenie operacyjne.
  • Potrzebujesz wykwalifikowanych specjalistów do obsługi heterogenicznie rozproszonych mikrousług.

9) W jakich przypadkach najlepiej nadaje się architektura mikrousług?

Architektura mikrousług najlepiej nadaje się do komputerów stacjonarnych, sieci Web, urządzeń mobilnych, telewizorów Smart TV, urządzeń do noszenia itp.

10) Podaj nazwy znanych firm, które używają architektury Microservice

Większość dużych witryn internetowych, takich jak Twitter, Netflix, Amazon, przeszła od architektury monolitycznej do architektury mikrousług.

11) Jakie są cechy mikrousług?

  • Podstawowe struktury przesyłania wiadomości
  • Zdecentralizowane zarządzanie
  • Łatwa automatyzacja infrastruktury
  • Projekt na niepowodzenie
  • Automatyzacja infrastruktury

12) Co to jest RESTful?

Usługi sieciowe typu Representational State Transfer (REST) ​​/ RESTful to styl architektoniczny, który pomaga systemom komputerowym komunikować się przez Internet. Te usługi sieci Web sprawiają, że mikrousługi są łatwiejsze do zrozumienia i wdrożenia.

13) Wyjaśnij trzy rodzaje testów mikrousług? W architekturze mikroserwisów testy są podzielone na trzy szerokie kategorie:

  • Na najniższym poziomie testu możemy przeprowadzić ogólny test, taki jak testy wydajności i testy jednostkowe. Tego rodzaju testy są całkowicie zautomatyzowane.
  • Na poziomie średnim możemy wykonać testy eksploracyjne, takie jak testy warunków skrajnych i testy użyteczności.
  • Na najwyższym poziomie możemy przeprowadzić testy akceptacyjne, których jest przeważnie mniej. Pomaga również zainteresowanym stronom poznać różne funkcje oprogramowania.

14) Co to są certyfikaty klienta?

Certyfikaty klienta to certyfikat cyfrowy używany do wysyłania uwierzytelnionych żądań do serwera zdalnego. Nazywa się to certyfikatem klienta.

15) Wyjaśnij zastosowanie PACT w architekturze mikrousług?

Jest to narzędzie typu open source, które umożliwia testowanie interakcji między dostawcami usług a konsumentami. Jest to jednak oddzielone od zawartej umowy. Zwiększa to niezawodność aplikacji mikrousług.

16) Jakie jest znaczenie OAuth?

OAuth oznacza otwarty protokół autoryzacji. Protokół ten umożliwia dostęp do aplikacji klienckich za pośrednictwem protokołu HTTP dla zewnętrznych dostawców GitHub, Facebook itp. Pomaga udostępniać zasoby przechowywane w jednej witrynie innej witrynie bez konieczności podawania ich danych uwierzytelniających.

17) Co to jest testowanie mikrousług od końca do końca?

Kompleksowe testy weryfikują, czy każdy proces w przepływie pracy działa poprawnie. Zapewnia również, że system jako całość współpracuje i spełnia wszystkie wymagania.

18) Dlaczego kontener jest używany w mikrousługach?

Kontenery są najłatwiejszą i skuteczną metodą zarządzania aplikacją opartą na mikrousługach. Pomaga również w indywidualnym opracowywaniu i wdrażaniu. Docker umożliwia również hermetyzację mikrousługi w obrazie kontenera wraz z jego zależnościami. Mikrousługa może korzystać z tych elementów bez dodatkowego wysiłku.

19) Jakie jest znaczenie monitorowania semantycznego w architekturze mikrousług?

Monitoring semantyczny łączy testy automatyczne z monitorowaniem aplikacji. Pozwala dowiedzieć się, dlaczego Twoja firma nie osiąga większych zysków.

20) Co to jest CDC?

CDC jest umową kierowaną przez konsumenta. Jest to wzorzec do tworzenia mikrousług, aby systemy zewnętrzne mogły z nich korzystać.

21) Jaki jest pożytek z Dockera?

Docker oferuje środowisko kontenerowe, które może służyć do hostowania dowolnej aplikacji. Ta aplikacja i wspierające ją zależności, które są ściśle spakowane razem.

22) Co to są rozszerzenia reaktywne w mikrousługach?

Rozszerzenia reaktywne są również nazywane Rx. Jest to wzorzec projektowy, który umożliwia zbieranie wyników przez wywołanie wielu usług, a następnie kompilację połączonej odpowiedzi. Rx to popularne narzędzie w systemach rozproszonych, które działa dokładnie odwrotnie do starszych przepływów.

23) Wyjaśnij termin „ciągłe monitorowanie”.

Ciągłe monitorowanie to metoda służąca do wyszukiwania zagadnień związanych z przestrzeganiem przepisów i ryzykiem związanym z otoczeniem operacyjnym i finansowym firmy. Zawiera ludzi, procesy i systemy robocze, które wspierają wydajne i rzeczywiste operacje.

24) W jaki sposób komunikują się ze sobą niezależne mikroserwisy?

To zależy od Twoich potrzeb projektowych. Jednak w większości przypadków programiści używają protokołu HTTP / REST z protokołem JSON lub binarnym. Mogą jednak używać dowolnego protokołu komunikacyjnego.