Обновление архитектуры
This commit is contained in:
parent
d0a4acf39c
commit
def7431e5a
32
dev/architecture/Bottlneck.md
Normal file
32
dev/architecture/Bottlneck.md
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
---
|
||||||
|
aliases:
|
||||||
|
- узкое место
|
||||||
|
tags:
|
||||||
|
- maturity/🌱
|
||||||
|
date: 2024-12-01
|
||||||
|
---
|
||||||
|
Узкое место (bottleneck) — компонент системы, ограничивающий её производительность или пропускную способность. Даже один неэффективный элемент может стать причиной снижения эффективности всей [[../../../../_inbox/Информационная система|информационной системы]].
|
||||||
|
|
||||||
|
Боттлнеки могут скрываться в любом элементе системы. Вот некоторые возможные области:
|
||||||
|
- [[highload/Балансировка нагрузки|Балансировщик нагрузки]]. Проблемы с распределением трафика.
|
||||||
|
- [[Бэкенд|Приложение]]. Ограничения на уровне кода или инфраструктуры.
|
||||||
|
- [[../../meta/zero/00 Реляционная база данных|База данных]]. Медленная обработка запросов, нехватка соединений.
|
||||||
|
- Распределенный [[Кэширование|кэш]]. Недостаток ресурсов или медленный доступ.
|
||||||
|
- [[Брокер сообщений]]. Ограничения на пропускную способность.
|
||||||
|
- Пропускная способность диска. Узкие места в файловых системах.
|
||||||
|
|
||||||
|
**Пример в** [[../../../../wiki/zero/00 Микросервисная архитектура|микросервисной архитектуре]].
|
||||||
|
Рассмотрим систему с несколькими микросервисами и сервисом аутентификации. Если общий объем запросов составляет 1000 rps, а сервис аутентификации может обработать только 100 rps, то он становится узким местом, замедляя работу всей системы.
|
||||||
|
***
|
||||||
|
## Мета информация
|
||||||
|
**Область**:: [[../../meta/zero/00 HighLoad|00 HighLoad]]
|
||||||
|
**Родитель**::
|
||||||
|
**Источник**::
|
||||||
|
**Создана**:: [[2024-12-01]]
|
||||||
|
**Автор**::
|
||||||
|
### Дополнительные материалы
|
||||||
|
-
|
||||||
|
|
||||||
|
### Дочерние заметки
|
||||||
|
<!-- QueryToSerialize: LIST FROM [[]] WHERE contains(Родитель, this.file.link) or contains(parents, this.file.link) -->
|
||||||
|
|
@ -7,6 +7,8 @@ date: 2024-11-24
|
|||||||
---
|
---
|
||||||
Подход "Shared Database" предполагает, что все микросервисы используют одну общую базу данных для хранения данных. Сервисы взаимодействуют напрямую с таблицами, которые принадлежат другим сервисам, что создает зависимости на уровне данных и разрушает [[Инкапсуляция|инкапсуляцию]] между микросервисами.
|
Подход "Shared Database" предполагает, что все микросервисы используют одну общую базу данных для хранения данных. Сервисы взаимодействуют напрямую с таблицами, которые принадлежат другим сервисам, что создает зависимости на уровне данных и разрушает [[Инкапсуляция|инкапсуляцию]] между микросервисами.
|
||||||
|
|
||||||
|
Наличие одной базы данных для всех сервисов увеличивает [[Связность|связность]] системы и создаёт [[Bottlneck|узкое место]].
|
||||||
|
|
||||||
В [[../../../../wiki/zero/00 Микросервисная архитектура|микросервисной архитектуре]] подход, при котором все сервисы общаются с одной общей базой данных, считается скорее анти-паттерном. Несмотря на то, что в некоторых случаях это может показаться более простым решением, такой подход ведет к серьёзным ограничениям и проблемам, особенно в масштабируемых системах. Использование общей базы данных приводит к проблемам с разделением ответственности и нарушает принципы слабой [[Связанность|связанности]] и высокой [[Связность|связности]], которые являются основными в микросервисной архитектуре.
|
В [[../../../../wiki/zero/00 Микросервисная архитектура|микросервисной архитектуре]] подход, при котором все сервисы общаются с одной общей базой данных, считается скорее анти-паттерном. Несмотря на то, что в некоторых случаях это может показаться более простым решением, такой подход ведет к серьёзным ограничениям и проблемам, особенно в масштабируемых системах. Использование общей базы данных приводит к проблемам с разделением ответственности и нарушает принципы слабой [[Связанность|связанности]] и высокой [[Связность|связности]], которые являются основными в микросервисной архитектуре.
|
||||||
|
|
||||||
**Проблемы подхода Shared Database**
|
**Проблемы подхода Shared Database**
|
||||||
|
@ -4,6 +4,7 @@ aliases:
|
|||||||
- backend
|
- backend
|
||||||
- бэкенда
|
- бэкенда
|
||||||
- бэкенду
|
- бэкенду
|
||||||
|
- Приложение
|
||||||
tags:
|
tags:
|
||||||
- maturity/🌱
|
- maturity/🌱
|
||||||
date:
|
date:
|
||||||
|
@ -2,6 +2,7 @@
|
|||||||
aliases:
|
aliases:
|
||||||
- кэш
|
- кэш
|
||||||
- кэша
|
- кэша
|
||||||
|
- кеш
|
||||||
tags:
|
tags:
|
||||||
- maturity/🌱
|
- maturity/🌱
|
||||||
date:
|
date:
|
||||||
|
Loading…
Reference in New Issue
Block a user