Трёхзвенная структура.md
This commit is contained in:
parent
604ffc55bd
commit
16bb80f919
34
dev/architecture/Rеverse proxy.md
Normal file
34
dev/architecture/Rеverse proxy.md
Normal file
@ -0,0 +1,34 @@
|
||||
---
|
||||
aliases:
|
||||
tags:
|
||||
- maturity/🌱
|
||||
date:
|
||||
- - 2024-04-13
|
||||
zero-link:
|
||||
- "[[../../meta/zero/00 Архитектура ИС|00 Архитектура ИС]]"
|
||||
parents:
|
||||
- "[[../garden/ru/dev/architecture/Фронтенд|Фронтенд]]"
|
||||
linked:
|
||||
---
|
||||
Rеverse proxy позволяет снять часть задач с [[Бэкенд|бэкенда]].
|
||||
|
||||
Rеverse proxy решает следующие проблемы:
|
||||
- **Организация https шифрования.** Клиенты подключаются к Reverse proxy по https, а прокси подключается к бэкенду по http.
|
||||
- Буферизация запросов и ответов.
|
||||
- Валидация http
|
||||
- Борьба с медленными клиентами. Клиенты с плохим интернет соединением могут долго удерживать канал. Reverse proxy с бэкендом быстро обмениваются данными, Reverse Proxy буферизирует ответ с бэкенда и может довольно долго удерживать соединение с клиентом скармливая ему ответ.
|
||||
***
|
||||
## Мета информация
|
||||
**Область**:: [[../../meta/zero/00 Архитектура ИС|00 Архитектура ИС]]
|
||||
**Родитель**:: [[Фронтенд]]
|
||||
**Источник**::
|
||||
**Автор**::
|
||||
**Создана**::
|
||||
### Дополнительные материалы
|
||||
-
|
||||
### Дочерние заметки
|
||||
```dataview
|
||||
LIST
|
||||
FROM [[]]
|
||||
WHERE contains(Родитель, this.file.link) or contains(parents, this.file.link)
|
||||
```
|
35
dev/architecture/Бэкенд.md
Normal file
35
dev/architecture/Бэкенд.md
Normal file
@ -0,0 +1,35 @@
|
||||
---
|
||||
aliases:
|
||||
- бэкенде
|
||||
- backend
|
||||
- бэкенда
|
||||
- бэкенду
|
||||
tags:
|
||||
- maturity/🌱
|
||||
date:
|
||||
- - 2024-04-13
|
||||
zero-link:
|
||||
- "[[../../meta/zero/00 Архитектура ИС|00 Архитектура ИС]]"
|
||||
parents:
|
||||
linked:
|
||||
---
|
||||
Бэкенд – один из самых больших бездельников в веб-архитектуре. У него есть всего 2 задачи:
|
||||
- Сетевой ввод-вывод. Обычно сводится к общению с [Rеverse proxy](Rеverse%20proxy.md) – прием http-запроса и ответ на него, и со всевозможными сервисами, которые хранят данные – это могут быть БД, очереди, memcaсhed и т.п.
|
||||
- Склеивание строк – сериализовать данные в JSON, сформировать шаблон на основе html, посчитать sh1 или md5? выполнить сжатие данных.
|
||||
|
||||
А что такое бизнес-логика в бэкенде? Это проверки наподобие "если значение переменных больше 3-х, делай это", "если пользователь авторизован, покажи одно, если не авторизован – покажи другое". Бывают, конечно, отдельные задачи, например, по изменению размера картинки, преобразования видео, но чаще всего такие задачи решаются вне бэкенда с использованием очередей, воркеров и т.д.
|
||||
***
|
||||
## Мета информация
|
||||
**Область**:: [[../../meta/zero/00 Архитектура ИС|00 Архитектура ИС]]
|
||||
**Родитель**::
|
||||
**Источник**::
|
||||
**Автор**::
|
||||
**Создана**:: [[2024-04-13]]
|
||||
### Дополнительные материалы
|
||||
- [[../../../../_inbox/Бэкенд большую часть времени ждет|Бэкенд большую часть времени ждет]]
|
||||
### Дочерние заметки
|
||||
```dataview
|
||||
LIST
|
||||
FROM [[]]
|
||||
WHERE contains(Родитель, this.file.link) or contains(parents, this.file.link)
|
||||
```
|
34
dev/architecture/Трёхзвенная структура.md
Normal file
34
dev/architecture/Трёхзвенная структура.md
Normal file
@ -0,0 +1,34 @@
|
||||
---
|
||||
aliases:
|
||||
- трехзвенная структура
|
||||
tags:
|
||||
- maturity/🌱
|
||||
date:
|
||||
- - 2024-05-23
|
||||
zero-link:
|
||||
- "[[../../meta/zero/00 Архитектура ИС|00 Архитектура ИС]]"
|
||||
parents:
|
||||
linked:
|
||||
---
|
||||
Мы выделяем некие звенья в обработке наших запросов, и каждое звено специализируется на обработке или выполнении определенного класса задач.
|
||||
|
||||
![](Pasted%20image%2020240523133746.png)
|
||||
|
||||
- [Фронтенд](Фронтенд.md). предназначен для быстрой обработки легких данных, как правило, статики. Эти запросы обрабатываются тут и не проходят на массивный, тяжелый бэкенд. Для фронтенда используются такие легковесные сервера, как [nginx](00%20Nginx.md). В разработке подобных серверов огромное внимание уделяется тому, какое количество ресурсов тратится на обработку одного запроса.
|
||||
- [Бэкенд](Бэкенд.md), как правило, это тяжелые приложения, в которых происходят вычисления, зашита бизнес-логика, и обрабатывать статические запросы бэкендом попросту неэффективно.
|
||||
- Следующий слой – это хранение данных, в простейшем варианте – [база данных](00%20Базы%20Данных.md).
|
||||
***
|
||||
## Мета информация
|
||||
**Область**:: [[../../meta/zero/00 Архитектура ИС|00 Архитектура ИС]]
|
||||
**Родитель**::
|
||||
**Источник**::
|
||||
**Автор**::
|
||||
**Создана**:: [[2024-05-23]]
|
||||
### Дополнительные материалы
|
||||
-
|
||||
### Дочерние заметки
|
||||
```dataview
|
||||
LIST
|
||||
FROM [[]]
|
||||
WHERE contains(Родитель, this.file.link) or contains(parents, this.file.link)
|
||||
```
|
19
dev/architecture/Фронтенд.md
Normal file
19
dev/architecture/Фронтенд.md
Normal file
@ -0,0 +1,19 @@
|
||||
---
|
||||
aliases:
|
||||
- фронтенд
|
||||
tags:
|
||||
- maturity/🌱
|
||||
date:
|
||||
- - 2024-05-23
|
||||
zero-link:
|
||||
- "[[../../meta/zero/00 Архитектура ИС|00 Архитектура ИС]]"
|
||||
parents:
|
||||
linked:
|
||||
---
|
||||
- [[Rеverse proxy]]
|
||||
|
||||
Для чего нужен фронтенд
|
||||
- Отдача статического контента
|
||||
- Буферизация запросов
|
||||
- Масштабирование бэкендов
|
||||
- Обслуживание медленных клиентов.
|
BIN
meta/files/images/Pasted image 20240413205842.png
Normal file
BIN
meta/files/images/Pasted image 20240413205842.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 194 KiB |
@ -5,8 +5,8 @@ parents:
|
||||
- "[[00 Разработка]]"
|
||||
title: Архитектура ПО
|
||||
---
|
||||
- [Трёхзвенная структура](../../dev/architecture/Трёхзвенная%20структура.md)
|
||||
- [Монолитная архитектура](Монолитная%20архитектура.md)
|
||||
- [Микросервисная архитектура](Микросервисная%20архитектура.md)
|
||||
- [Service Oreinted Architecture](Service%20Oreinted%20Architecture.md)
|
||||
- [Трёхзвенная структура](Трёхзвенная%20структура.md)
|
||||
- [[00 HighLoad|HighLoad]]
|
Loading…
Reference in New Issue
Block a user