🏆
.NET Developer Roadmap
  • README
  • Tech Skills
    • Язык C#
      • LINQ
      • Многопоточность и Асинхронность
      • Expression Trees
      • Рефлексия
      • Диагностика
    • Системы контроля версий
    • Технологии
      • .Net Framework / .Net Core
      • Фреймворки доступа к данным
        • Dapper
        • Entity Framework
      • Task Scheduling
      • Good to Know Libraries
    • Обеспечение качества
      • Тестирование
      • Рефакторинг
      • Code Review
      • Метрики и мониторинг
      • Работа с техническим долгом
    • Базы Данных
      • T-SQL
      • NoSQL
      • Search Engines
      • Cloud Databases
    • Принципы и методологии
      • Шаблоны проектирования
      • Шаблоны уровня доступа к данным
      • ООП
      • SOLID
      • Inversion of Control
      • Архитектурные шаблоны
        • Command Query Responsibility Segregation, CQRS
        • Domain-driven design, DDD
    • Построение Веб-сервисов
      • HTTP, REST, Веб-фреймворки
      • Логирование
      • Кэширование
      • Авторизация и Аутентификация
      • Web Servers
    • Алгоритмы и Структуры Данных
    • Распределённые системы и Микросервисы
      • Шаблоны проектирования
      • Семантики доставки
      • Message Brokers
      • Message-Bus
      • Docker
      • Kubernetes
      • Консенсус в распределенных системах
    • Автоматизация цикла разработки
    • Полезные ссылки
  • Personal Skills
    • Методологии разработки
Powered by GitBook
On this page
  • Темы:
  • Контрольные вопросы:
  • Источники:

Was this helpful?

  1. Tech Skills

Распределённые системы и Микросервисы

Темы:

  • Что такое распределенная система?

  • Вертикальное и горизонтальное масштабирование

  • Теорема CAP

  • Концепция балансировки нагрузки

  • Кеширование в распределенных системах

  • Репликации баз данных

  • Выбор между Performance vs scalability, Latency vs throughput, Availability vs consistency в распределенных системах

  • Consistency patterns: Weak consistency, Eventual consistency, Strong consistency

  • Availability patterns: Active-passive Failover, Active-active Failover, Master-slave replication, Master-master replication

  • Построение микросервисной архитектуры

  • Распределенные транзакции, 2PC, Saga Pattern

  • Миграция с монолита на микросервисы, Шаблон Strangler

Контрольные вопросы:

  • В чем разница между Вертикальным и горизонтальным масштабированием?

  • В чем смысл теоремы CAP?

  • Какие существуют алгоритмы балансировки нагрузки?

  • Опишите шаблон кеширования Cache-aside.

  • В чем разница между SQL и No-SQL

  • Что такое Eventual consistency?

  • Как добиться транзакционности в микросервисной архитектуры?

  • Опишите идею шаблона Strangler.

Источники:

PreviousАлгоритмы и Структуры ДанныхNextШаблоны проектирования

Last updated 5 years ago

Was this helpful?

Lecture 9 Scalability Harvard Web Development David Malan
Горизонтальное и вертикальное масштабирование веб приложений
CAP Theorem: Revisited
The System Design Primer
Load balancer
The System Design Primer, Cache
Scalability for Dummies - Part 3: Cache
he System Design Primer, Replications
The System Design Primer, Trade offs
The System Design Primer, Consistency Patterns
The System Design Primer, Availability Patterns
Статьи Мартина Фаулера по Микросервисам
Книга Building Microservices: Designing Fine-Grained Systems 1st Edition by Sam Newman
Patterns for distributed transactions within a microservices architecture
Pattern: Saga
Monolith to Microservices Using the Strangler Pattern