Топ-20 концепций проектирования систем, которые вам стоит знать
1. Балансировка нагрузки: распределяет трафик между несколькими серверами для обеспечения надёжности и доступности.
2. Кэширование: хранит часто используемые данные в памяти для более быстрого доступа.
3. Шардинг баз данных: разделяет базы данных для обработки крупномасштабного роста данных.
4. Репликация: копирует данные между репликами для обеспечения доступности и отказоустойчивости.
5. Теорема CAP: компромисс между согласованностью, доступностью и толерантностью к разбиванию.
6. Согласованное хеширование: равномерно распределяет нагрузку в динамических серверных средах.
7. Очереди сообщений: отделяют сервисы с использованием асинхронной событийной архитектуры.
8. Ограничение скорости: Регуляторы запрашивают частоту для предотвращения перегрузки системы.
9. Шлюз API: централизованная точка входа для маршрутизации запросов API.
10. Микросервисы: Разбивает системы на независимые, слабо связанные сервисы.
11. Обнаружение сервисов: динамически локализирует сервисы в распределённых системах.
12. CDN: Доставляет контент с периферийных серверов для скорости.
13. Индексация базы данных: ускоряет выполнение запросов за счёт индексирования важных полей.
14. Разделение данных: Разделяет данные между узлами для масштабируемости и производительности.
15. Конечная согласованность: гарантирует согласованность со временем в распределённых базах данных
16. WebSockets: обеспечивают двустороннюю коммуникацию для живых обновлений.
17. Масштабируемость: увеличивает ёмкость за счёт модернизации или добавления машин.
18. Отказоустойчивость: обеспечивает доступность системы при сбоях аппаратного и программного обеспечения.
19. Мониторинг: отслеживает метрики и журналы для понимания состояния системы.
20. Аутентификация и авторизация: Контролирует доступ пользователей и безопасно проверяет личность.
Комментарии (1)
1. Балансировка нагрузки: распределяет трафик между несколькими серверами для обеспечения надёжности и доступности.
2. Кэширование: хранит часто используемые данные в памяти для более быстрого доступа.
3. Шардинг баз данных: разделяет базы данных для обработки крупномасштабного роста данных.
4. Репликация: копирует данные между репликами для обеспечения доступности и отказоустойчивости.
5. Теорема CAP: компромисс между согласованностью, доступностью и толерантностью к разбиванию.
6. Согласованное хеширование: равномерно распределяет нагрузку в динамических серверных средах.
7. Очереди сообщений: отделяют сервисы с использованием асинхронной событийной архитектуры.
8. Ограничение скорости: Регуляторы запрашивают частоту для предотвращения перегрузки системы.
9. Шлюз API: централизованная точка входа для маршрутизации запросов API.
10. Микросервисы: Разбивает системы на независимые, слабо связанные сервисы.
11. Обнаружение сервисов: динамически локализирует сервисы в распределённых системах.
12. CDN: Доставляет контент с периферийных серверов для скорости.
13. Индексация базы данных: ускоряет выполнение запросов за счёт индексирования важных полей.
14. Разделение данных: Разделяет данные между узлами для масштабируемости и производительности.
15. Конечная согласованность: гарантирует согласованность со временем в распределённых базах данных
16. WebSockets: обеспечивают двустороннюю коммуникацию для живых обновлений.
17. Масштабируемость: увеличивает ёмкость за счёт модернизации или добавления машин.
18. Отказоустойчивость: обеспечивает доступность системы при сбоях аппаратного и программного обеспечения.
19. Мониторинг: отслеживает метрики и журналы для понимания состояния системы.
20. Аутентификация и авторизация: Контролирует доступ пользователей и безопасно проверяет личность.