TGViewer
Channel Public Channel
Системный анализ | Дмитрий Помаскин

Системный анализ | Дмитрий Помаскин

@system_analysis_school

📍Обучение системному анализу
📍Полезные материалы для развития навыков
📍Разбор практических кейсов по системному анализу и архитектуре
📍Индивидуальные консультации (менторство)

Моя онлайн-школа:
https://system-analysis.skillspace.ru
Subscribers
1.4K
Photos
47
Videos
154
Links
276

Showing posts older than #76 · Back to latest

Older Posts 20 shown
Post #75 841
❓Очередной вопросно-ответный пост.

Если у вас возникают какие-то вопросы, касающиеся тематики канала, не стесняйтесь и задавайте их в комментариях.

Сложные кейсы, с которыми столкнулись в работе, теоретические вопросы, вопросы по курсам и т.д.

💬 Я отвечу на них в комментариях, а самые интересные разберу в видеоформате.
  • 👍 7
Post #74 998
🚩Кейс: Расчет необходимого количества партиций для нового топика кафки с учетом HPA.

ℹ️ HPA (Horizontal Pod Autoscaler) — это механизм автоматического масштабирования подов (контейнеров) в Kubernetes на основе текущей нагрузки (CPU, RAM, пользовательских метрик и т.д.)

✅ Количество партиций в топике должно быть не меньше максимально возможного значения, установленного в HPA сервиса.

P.S. Для тех, кто пропустил первую часть, она тут.

Системный анализ | Дмитрий Помаскин
  • 🔥 10
  • 👏 5
  • 👍 4
Post #73 923
🚩Кейс: Расчет необходимого количества партиций для нового топика кафки.

1️⃣ Количество партиций должно быть кратно числу подов его консьюмеров;

2️⃣ Пропускная способность одной партиции примерно 10 МБ/с (точное значение зависит от ресурсов и конфигурации);

3️⃣ Чем больше партиций, тем дольше ребалансировка.

⚠️ Помните: можно добавлять партиции, но нельзя их удалять.

Системный анализ | Дмитрий Помаскин
  • 🔥 14
  • 👍 6
Post #72 921
❔Что такое идентификация, аутентификация и авторизация?

1️⃣ Идентификация - процесс указания пользователем своей личности (например, логина или email).
🔸Пример: Вы вводите имя пользователя или почту при входе в систему.

2️⃣ Аутентификация - проверка подлинности пользователя (подтверждение, что он действительно тот, за кого себя выдаёт).
🔸Пример: Вы вводите пароль, используете биометрию, SMS-код или аппаратный ключ.

3️⃣ Авторизация - предоставление прав на доступ к ресурсам.
🔸Пример: После входа вы видите свои счета в приложении банка, но не видите счета других пользователей.

P.S. Понимание этих этапов поможет вам в правильном проектировании SSO (Single Sign-On) сервисов.

Системный анализ | Дмитрий Помаскин
  • 🔥 13
  • 👍 8
Post #71 863
⚠️ Обращение к тем, кто проходит обучение.

Для получения сертификата о прохождении курса Вам необходимо указать в профиле Вашу фамилию, имя и отчество.
Если вы уже указывали Ваши данные, пожалуйста, проверьте корректность введенной информации.
  • 👍 6
  • 👏 2
Post #70 1.05K
🚩Кейс: Какой брокер выбрать? (RabbitMQ или Apache Kafka).

RabbitMQ:
✅ Простота администрирования;
✅ P2P взаимодействие (очереди задач, фоновая отправка уведомлений);
✅ До 40-45 тысяч сообщений в секунду (примерный ориентир для базовых конфигураций, все зависит от ресурсов);
✅ Не нужно хранить сообщения после получения консьюмером.

❌ Хуже работает с большим потоком данных;
❌ Нет хранения сообщений после их получения консьюмером.
❌ Только вертикальная масштабируемость (кластеризация сложная).

Apache Kafka:
✅ Миллионы сообщений в секунду (аналитика, аудит);
✅ Потребность отправлять одно сообщение множеству консьюмеров (проще fanout exchange);
✅ Хранение сообщений после их получения консьюмером;
✅ Горизонтальная масштабируемость (партиции);
✅ EDA;

❌ Нет сложной маршрутизации;
❌ Потребляет больше ресурсов, чем rabbitMQ;
❌ Избыточен для простых задач.

P.S. Если хотите научиться выбирать брокер под конкретные кейсы на практике, такие задачи мы решаем в курсах по основам архитектуры и системным интеграциям.

Системный анализ | Дмитрий Помаскин
  • 🔥 11
  • 👍 7
Post #69 965
🚩Кейс: Проверка прав доступа у пользователя.

1️⃣ Описывая требования к front-end, вы закладываете ограничения на доступ к каким-то элементам интерфейса для определенных ролей пользователей.

2️⃣ Описывая требования к back-end, не забывайте, что ваши сервисы также должны проверять наличие роли у пользователя, отправившего запрос.

Системный анализ | Дмитрий Помаскин
  • 👍 20
Post #68 1.1K
❓Периодически буду с выкладывать вопросно-ответный пост (это он).

Если у вас возникают какие-то вопросы, касающиеся тематики канала, можете задавать их в комментариях.
Сложные кейсы, с которыми столкнулись в работе, теоретические вопросы, вопросы по курсам и т.д.

💬 Я отвечу на них в комментариях, а самые интересные разберу в видеоформате.
  • 🔥 12
  • 👏 3
Post #67 1.16K
🚩Кейс: Создание новой формы в интерфейсе.

1️⃣ Описывая требования к front-end, не забывайте про правила заполнения формы: обязательность полей, маска ввода и т.д.

2️⃣ Описывая требования к back-end, вам точно так же необходимо помнить про валидацию полученной в запросе информации. Сервис должен проверить правильность заполнения полей, необходимых для дальнейшего исполнения задачи.
  • 👍 11
Post #66 1.26K
  • 👍 14
Post #65 1.35K
🚩Кейс: формирование отчетов по данным вашей системы.

1️⃣ Разрабатываем отдельный сервис, который будет содержать логику формирования отчетов;

2️⃣ Под этим сервисом поднимаем отдельную БД для статистики и отчетов;

3️⃣ Реплицируем в эту БД часть данных, необходимую для формирования отчетов;

4️⃣ Строим отчеты без эффекта на критически важные модули системы.

Ниже приложу схему для наглядности👇

Системный анализ | Дмитрий Помаскин
  • 👍 15
  • 🔥 2
Post #64 1.21K
🚀 Запускаю интересный сервис :)

Бесплатная оценка ваших навыков без примитивных тестов и телеграм-ботов.

Только хардкор и свободные(текстовые) ответы на вопросы 😎

Проверю всё самостоятельно и направлю вам подробную обратную связь в личные сообщения.

✅ Вас ждут 42 вопроса по хард скилам системного аналитика;

🕐 У вас будет 60 минут и только 1 попытка на прохождение, поэтому рассчитывайте своё время;

⛔️ Чтобы получить честную оценку, лучше не пользоваться поисковыми сервисами и нейросетями:)

Записаться можно здесь

P.S. Вопросы на абсолютно разные грейды, поэтому не переживайте, если вы чего-то не знаете :)

Системный анализ | Дмитрий Помаскин
  • 🔥 11
Post #63 1.06K
❔«Чем отличается GET от POST?»

Неполный ответ:
⚠️ GET - получает ресурс, POST - создает ресурс.

Обязательно не забывайте сравнивать их по свойствам:
✅ Наличие тела: GET - нет, POST - да;

✅ Кэшируемость: GET - да, POST - нет;

✅ Безопасность: GET - да, POST - нет;

✅ Идемпотентность: GET - да, POST - нет.

P.S. Метод POST - частично-кэшируемый метод, зависит от способа применения и заголовков.
  • 👍 13
  • 🔥 6
Post #62 923
👋 Обращение к студентам курса "Основы архитектуры"

Проверял домашние работы и заметил, что в 1 модуле почти все допускают ошибку при описании мониторинга системы.
Обратите внимание, что вам нужно описать не только технические метрики, но и безнес-метрики.

P.S. Я об это говорю в модуле, специально сам пересмотрел:)
  • 🤔 3
  • 🙏 3
Post #61 1.03K
‼️Если возникли проблемы с рассрочкой или промокодом.

Вижу, что многие заходят на бесплатный "Ознакомительный" тариф, поэтому повторно выкладываю инструкцию, как сменить тариф в рассрочку или с применением промокода:

1. Выйти из аккаунта;

2. Перейти на страницу курса, на которой вы регистрировались на "Ознакомительный" тариф;

3. Выбрать интересующий вас тариф и ввести промокод;

4. Указать почту, на которую вы уже зарегистрировались, и нажать "Перейти к оформлению";

5. У вас откроется окно входа в систему, так как данная почта уже используется;

6. Просто введите свои данные для входа, и у вас откроется окно оформления рассрочки.

P.S. О данном ограничении уже сообщил разработчикам платформы, обещали устранить.

P.P.S. Если у вас возникают какие-то вопросы или трудности, всегда можете написать мне в личные сообщения :) @system_analysis_dmitriy


Для наглядности прикладываю видеоинструкцию.
  • 👍 4
  • 👏 2
Post #60 869
  • 🔥 7
  • 👍 4
Post #59 972
🚩Кейс: Передача большого объекта через брокер сообщений.

✅ Использовать отдельное хранилище, доступ к которому должен быть у всех сервисов, участвующих в работе с объектом.

1️⃣ Сервис producer сохраняет объект в хранилище и получает в ответ ссылку на него;

2️⃣ Сервис producer отправляет в брокер сообщение, которое содержит ссылку на объект в хранилище, а не сам объект;

3️⃣ Сервис consumer получает ссылку из брокера;

4️⃣ Сервис consumer обращается в хранилище для получения объекта.

Ниже приложу схему для наглядности👇

Системный анализ | Дмитрий Помаскин
  • 👍 9
  • 🔥 5
Post #58 927
🚩Кейс: Проектирование REST API для нового сервиса.

1️⃣ Если сервис не является владельцем сущности системы, а просто выполняет какую-то функцию, необходимо:
🔸 Реализовать синхронный метод для вызова функции сервиса;
🔸 Реализовать асинхронный метод для вызова функции сервиса;
🔸 При необходимости, реализовать методы для множественного вызова по списку объектов.

2️⃣ Сервис является владельцем сущности в системе:
🔸Реализовать методы на все CRUD-операции (могут быть множественными);
🔸Реализовать метод получения списка объектов;
🔸Не забыть про пагинацию, если она нужна;
🔸Не забыть про фильтрацию списка;
🔸Для сложной фильтрации стоит использовать метод POST для получения списка;
🔸При наличии дополнительной логики работы с объектами реализовать для нее методы.

3️⃣ Для всех сервисов:
🔸Авторизация штатными средствами вашей системы;
🔸Используйте формат данных, принятый для таких сервисов на проекте;
🔸Напомните разработчику про правильные коды ответов;
🔸Не забывайте о принципе единственной ответственности.
  • 🔥 9
  • 👍 8
  • 🤯 2
Post #56 901
❔«Какие вы знаете архитектурные стили?»

Типичная ошибка:
❌ Монолит и микросервисы.

Правильный ответ:
✅ Существуют монолитные и распределенные системы.

✅ Виды распределенных систем: service-oriented architecture (SOA), domain-driven design (DDD), event-driven architecture (EDA), микросервисы, распределенный монолит.

P.S. Если не знакомы с распределенным монолитом, то не упоминайте его, дабы избежать курьезных дополнительных вопросов.
  • 🔥 9
  • 👍 5
Older posts →
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →