Найкращі 25 запитань та відповідей на інтерв’ю щодо мікросервісів

Anonim

Завантажте PDF

1) Поясніть архітектуру мікропослуг

Microservice Architecture - це стиль архітектурної розробки, який створює додаток як колекцію невеликих автономних служб, розроблених для ділового домену.

2) Назвіть три часто використовувані інструменти для мікросервісів

  • Wiremock, 2.) Docker та 3.) Hysrix - важливий інструмент мікросервісів.

3) Що таке монолітна архітектура? Монолітна архітектура схожа на великий контейнер, в якому всі програмні компоненти програми зібрані в одному пакеті.

4) Які переваги мікропослуг?

Ось деякі суттєві переваги використання мікросервісів:

  • Різноманітність технологій, наприклад, мікросервіси можуть легко поєднуватися з іншими фреймворками, бібліотеками та базами даних
  • Ізоляція несправностей, наприклад, збій процесу не повинен розбивати всю систему.
  • Більша підтримка меншої та паралельної команди
  • Незалежне розгортання
  • Скоротити час розгортання

5) Що таке Весняна Хмара?

Spring cloud - це інтеграційне програмне забезпечення, яке інтегрується із зовнішніми системами. Це дозволяє фреймворку мікросервісів створювати програми, які виконують обмежений обсяг обробки даних.

6) Обговоріть використання звітів та інформаційних панелей у середовищі мікросервісів

Звіти та інформаційні панелі допомагають контролювати та утримувати мікросервіси. Тонни інструментів моніторингу додатків допомагають у цьому.

7) Які основні відмінності між мікросервісами та монолітною архітектурою?

Мікропослуги Монолітна архітектура
Запуск служби відбувається швидко Запуск послуги вимагає часу
Мікропослуги - це вільно пов'язана архітектура. Монолітна архітектура в основному тісно пов'язана.
Зміни, внесені в одній моделі даних, не впливають на інші мікросервіси. Будь-які зміни в моделі даних впливають на всю базу даних
Мікросервіс фокусується на продуктах, а не на проектах Монолітний акцент робиться на всьому проекті

8) З якими проблемами стикається користування мікросервісами?

  • Мікросервіси завжди покладаються один на одного. Тому їм потрібно спілкуватися між собою.
  • Оскільки вона є розподіленою системою, вона є активною моделлю.
  • Якщо ви використовуєте архітектуру Microservice, вам потрібно бути готовим до накладних операцій.
  • Вам потрібні кваліфіковані фахівці для підтримки різнорідних мікропослуг.

9) У яких випадках архітектура мікросервісу найкраще підходить?

Архітектура мікросервісу найкраще підходить для настільних комп'ютерів, Інтернету, мобільних пристроїв, Smart TV, носіїв тощо.

10) Скажіть, як називаються деякі відомі компанії, які використовують архітектуру Microservice

Більшість масштабних веб-сайтів, таких як Twitter, Netflix, Amazon, перейшли від монолітної архітектури до архітектури мікропослуг.

11) Які характеристики мікросервісів?

  • Основні рамки обміну повідомленнями
  • Децентралізоване управління
  • Проста автоматизація інфраструктури
  • Дизайн на відмову
  • Автоматизація інфраструктури

12) Що таке RESTful?

Представницький державний трансфер (REST) ​​/ RESTful веб-служби - це архітектурний стиль, який допомагає комп’ютерним системам спілкуватися через Інтернет. Ці веб-сервіси полегшують розуміння та впровадження мікропослуг.

13) Поясніть три типи тестів для мікросервісів? В архітектурі Microservice тести поділяються на три великі категорії:

  • На тесті нижнього рівня ми можемо виконати загальний тест, такий як продуктивність та модульні тести. Такі види тестів повністю автоматизовані.
  • На середньому рівні ми можемо проводити дослідницькі тести, такі як стрес-тести та юзабіліті.
  • На вищому рівні ми можемо проводити приймальні випробування, які в основному менші за кількістю. Це також допомагає зацікавленим сторонам знати про різні функції програмного забезпечення.

14) Що таке сертифікати клієнта?

Клієнтські сертифікати - це цифровий сертифікат, який використовується для надсилання автентифікованих запитів на віддалений сервер. Це називається сертифікатом клієнта.

15) Поясніть використання PACT в архітектурі мікросервісів?

Це інструмент з відкритим кодом, який дозволяє перевірити взаємодію між постачальниками послуг та споживачами. Однак це відокремлено від укладеного договору. Це підвищує надійність програм Microservices.

16) Що означає OAuth?

OAuth означає відкритий протокол авторизації. Цей протокол дозволяє отримати доступ до клієнтських програм на HTTP для сторонніх провайдерів GitHub, Facebook тощо. Він допомагає вам ділитися ресурсами, що зберігаються на одному веб-сайті, з іншим сайтом без необхідності їх облікових даних.

17) Що таке тестування мікросервісів?

Наскрізне тестування підтверджує, що кожен процес у робочому процесі працює належним чином. Це також гарантує, що система працює разом як одне ціле та задовольняє всім вимогам.

18) Чому контейнер використовується в мікросервісах?

Контейнери - це найпростіший та ефективний метод управління додатком на основі мікросервісу. Це також допомагає вам розробляти та розгортати індивідуально. Docker також дозволяє інкапсулювати мікросервіс у зображення контейнера разом із залежностями. Мікросервіс може використовувати ці елементи без додаткових зусиль.

19) Що означає семантичний моніторинг в архітектурі мікросервісів?

Семантичний моніторинг поєднує в собі автоматизовані тести та моніторинг програми. Це дозволяє з’ясувати причини, чому ваш бізнес не приносить більше прибутку.

20) Що таке CDC?

CDC - це контракт, керований споживачами. Це модель розвитку мікросервісів, щоб зовнішні системи могли ними користуватися.

21) Яка користь від Docker?

Docker пропонує середовище контейнера, яке можна використовувати для розміщення будь-якої програми. Ця програма та залежності, які її підтримують, щільно упаковані разом.

22) Що таке реактивні розширення в мікросервісах?

Реактивне розширення також називають Rx. Це шаблон дизайну, який дозволяє збирати результати за допомогою виклику багатьох служб, а потім компілювати комбіновану відповідь. Rx - це популярний інструмент у розподілених системах, який працює точно протилежно застарілим потокам.

23) Поясніть термін „постійний моніторинг”.

Постійний моніторинг - це метод, який використовується для пошуку питань дотримання та ризиків, пов’язаних з операційним та фінансовим середовищем компанії. Він містить людину, процеси та робочі системи, які підтримують ефективні та реальні операції.

24) Як незалежні мікрослужби взаємодіють між собою?

Це залежить від потреб вашого проекту. Однак у більшості випадків розробники використовують HTTP / REST з протоколом JSON або Binary. Однак вони можуть використовувати будь-який протокол зв'язку.