Що означає «висока зв'язність» (high cohesion) всередині сервісу?
Висока зв'язність (high cohesion) означає, що всі компоненти всередині мікросервісу виконують пов'язані завдання і слугують одній бізнес-меті. Тобто логіка, дані та функції сервісу утворюють цілісне, внутрішньо узгоджене ціле.
Суть
Усередині одного сервісу мають бути лише ті частини, які природно працюють разом. Якщо сервіс керує замовленнями, у ньому мають бути лише процеси, пов'язані із замовленнями: створення, статус, скасування, історія.
Навіщо це потрібно
- Підвищує зрозумілість і стійкість коду - усе, що потрібно для одного завдання, в одному місці.
- Полегшує підтримку і розвиток - зміни не зачіпають інші сервіси.
- Робить систему модульною: один сервіс = одна логічна зона.
Протилежність: низька зв'язність
Коли в одному сервісі зібрані непов'язані функції (наприклад, замовлення, користувачі та платежі разом), це призводить до хаосу, складної логіки і порушення принципу «одна бізнес-функція - один сервіс».
Підсумок:
Висока зв'язність - коли всередині сервісу все логічно пов'язане і працює заради однієї мети. Це робить сервіс автономним, простим для розуміння і легким для зміни.
Коротка відповідь
Для співбесідиКоротка відповідь допоможе вам впевнено відповідати на цю тему під час співбесіди.