Сундучок системного аналитика
296 subscribers
44 photos
1 video
88 links
Пятнадцать человек на сундук системного аналитика и бутылка смузи.

Канал для системных аналитиков.

Сундучок с полезными инструментами, курсами и интересными материалами.

Пройти в уютный чатик ➡️ @analystlab_chat

Связь @batorsky
Download Telegram
How do we design effective and safe APIs?

The diagram below shows typical API designs with a shopping cart example.

Note that API design is not just URL path design. Most of the time, we need to choose the proper resource names, identifiers, and path patterns. It is equally important to design proper HTTP header fields or to design effective rate-limiting rules within the API gateway.

Alex Xu следит за нами?
👍1🔥1
Forwarded from System Design World (Vladimir)
🏦 System Design. База. Клеппман. You are welcome! Глава 2

🛞 Набираем обороты!
Состоявшийся вебинар получил положительные отзывы и оценки. И это радует 😊 Продолжаем!
В следующую субботу в 19:00 разбираем очередную главу. Глава не простая. Пробуем разжевать 🍿

📖 Темы из доклада:
· Relational vs Document models:
+ Many-to-One & Many-to-Many
+ On-Read vs On-Write Schema
+ Диффузия моделей данных
· Imperative vs Declarative models:
+ SQL, CSS, XSL и... JavaScript
+ MapReduce
· Graph model
· Triple-Stores model
· сиренивинькаяглазовыколупывательницачтотутвообщезатерминытакиеМишаСпасай!😅

✍️ В обратной связи по прошедшему вебинару участники приводили пожелания по анонсу.
Чтобы можно было заранее понять будет ли вебинар, распланировать субботу и иметь удобную возможность поставить его в календарь.
👌 Сделал level up в организации. Создал timepad аккаунт и событие-анонс в нём.
Итак, для вашего удобства, регистрируйтесь на мероприятие в субботу(25.01.25) в 19:00 здесь:
https://vladimir-nevzorov-event.timepad.ru/event/3204617/

До скорой встречи! ☺️

Как вам далась эта глава? Что оказалось наиболее непонятным? Или, наоборот - понятным и полезным?

🔥 - супер, буду онлайн!
💯 - посмотрю в записи!
👍 - хорошая активность, поддерживаю!
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥6👍1
28 января (вт) в 18:00 МСК пройдет вебинар на тему «Что такое архитектура ИС и как ее проектировать?», на котором Анна Вичугова, Эксперт по бизнес-анализу и проектированию ИС и Кандидат наук по Системному анализу и управлению, на практических примерах расскажет про проектирование архитектуры информационных систем, связанные с этим мифы, техники и инструменты.

▫️План вебинара:
— Практический смысл архитектуры ИС
— Уровни архитектурного проектирования
— Основные факторы, влияющие на принятие архитектурных решений
— Почему фраза «все зависит от контекста» — не просто смешной мем
— Участники процессов проектирования
— Инструменты и артефакты проектирования
— Какова цена ошибки «неправильной» архитектуры
— Почему «идеального» решения не существует (в поисках компромисса)

▫️Вебинар будет полезен:
— Системным аналитикам
— Бизнес-аналитикам
— Менеджерам ИТ-проектов
— Разработчикам
— Проектировщикам информационных систем

Регистрация

Всех, кто не хочет пропустить ни одного анонса наших вебинаров, приглашаем в нашу группу @se_webinars, где мы по топикам публикуем новости, полезные материалы, записи и слайды презентаций вебинаров.
👍4❤‍🔥1
Why is Redis so 𝐟𝐚𝐬𝐭?
.
.
The diagram below shows 3 main reasons:

1️⃣ Redis is RAM-based. Access to RAM is at least 1000 times faster than access to random disks. Redis can be used as a cache to improve application responsiveness and reduce database load when used as a cache.

2️⃣ Redis implements IO multiplexing and single-threaded execution.

3️⃣ A number of efficient lower-level data structures are leveraged by Redis. By keeping these data structures in memory, serialization and deserialization costs are reduced.

SortedSet, for example, makes the implementation of leaderboards so simple and efficient. On the other hand, a bitmap can be used to aggregate month-over-month login statuses.

ByteByteGo
What is a webhook?

The diagram below shows a comparison between polling and webhook.

Assume we run an eCommerce website. The clients send orders to the order service via the API gateway, which goes to the payment service for payment transactions. The payment service then talks to an external payment service provider (PSP) to complete the transactions.

There are two ways to handle communications with the external PSP.

🔹 1. Short polling
After sending the payment request to the PSP, the payment service keeps asking the PSP about the payment status. After several rounds, the PSP finally returns with the status.

Short polling has two drawbacks:
1) Constant polling of the status requires resources from the payment service.
2) The External service communicates directly with the payment service, creating security vulnerabilities.

Продолжение под катом ➡️

ByteByteGo

#polling #webhook
Что делать, когда попал на проект без документации

#статья #хабр #документация
🔥3
Сегодня в 19:00 состоится очередная встреча, посвященная книге Криса Ричардсона "Микросервисы".

На встрече мы продолжим читать 5 главу книги - "Проектирование бизнес-логики в микросервисной ахитектуре"

Что мы будем делать?

• Подробно разбирать главу 5 книги;
• Обсуждать сложные моменты;
• Обмениваться лучшими практиками.

Как присоединиться?
➡️ Ссылка для подключения к встрече
Интересная статья вышла на Хабре:
Как превратить монолитную архитектуру в микросервисную.

Мне больше комментарии к статье понравились.
Оставлю это здесь, чтобы не потерять)

#статья #хабр #микросервисы
👍2
Сегодня в 19:00 состоится очередная встреча, посвященная книге Криса Ричардсона "Микросервисы".

На встрече мы начнем читать 6 главу книги - "Разработка бизнес-логики с порождением событий"

Что мы будем делать?

• Подробно разбирать главу 6 книги;
• Обсуждать сложные моменты;
• Обмениваться лучшими практиками.

Как присоединиться?
➡️ Ссылка для подключения к встрече

Где посмотреть запись встреч?
➡️ Запись встреч находится тут

Как узнать когда проходят встречи?
Для самых забывчивых ссылка на календарь
❤‍🔥4
This media is not supported in your browser
VIEW IN TELEGRAM
REST
- Uses standard HTTP methods like GET, POST, PUT, DELETE for CRUD operations.
- Works well when you need simple, uniform interfaces between separate services/applications.
- Caching strategies are straightforward to implement.
- The downside is it may require multiple roundtrips to assemble related data from separate endpoints.

GraphQL
- Provides a single endpoint for clients to query for precisely the data they need.
- Clients specify the exact fields required in nested queries, and the server returns optimized payloads containing just those fields.
- Supports Mutations for modifying data and Subscriptions for real-time notifications.
- Great for aggregating data from multiple sources and works well with rapidly evolving frontend requirements.
- However, it shifts complexity to the client side and can allow abusive queries if not properly safeguarded
- Caching strategies can be more complicated than REST.

Alex Xu
🔥1
Наш новый промокод на 2025 год

Курс по проектированию интеграций и немного про архитектуру.

Чему обещают научить:
💡Выбирать стиль интеграции под вашу задачу;
💡Проектировать с нуля интеграции (REST, SOAP, gRPC и др. + брокеры сообщений);
💡Правильно собирать требования и моделировать в UML;

Разработать свой API на Python;
Вас ждет более 100 тестов;

Ну и на выходе вы получите большую базу фундаментальных знаний, а может даже и сертификат.

Обещают, что доступ к урокам и обновлениям остается навсегда.

Бонусный модуль про проектирование баз данных — нормализация, транзакции, основы DWH, индексы.
Вдруг вам надо.

Автор предлагает три варианта прохождения на выбор:

Курс без проверки заданий
Курс с проверкой заданий
Полный курс с поддержкой

К любому из курсов можно применить промокод на 1200 ₽

Как применить промокод:
1. Авторизуйся на платформе Stepik
2. Перейди по одной из ссылок выше
3. Нажми «Купить»
4. В поле «У меня есть промокод» введи BATORSKY2025

Промокод действует до 31.12.2025 г.
🔥1
Как научиться анализировать информацию, принимать решения и осознанно формировать свою точку зрения, не поддаваясь на манипуляции, пропаганду, нарушения логики и фальсификацию.

Об этом вы можете узнать на курсе Критическое мышление

На курсе вы научитесь:

⭐️ Мыслить ясно ⭐️
Рассуждать логически, замечать приемы манипуляций, не принимать решения на эмоциях и не вводить в заблуждение в первую очередь себя.

⭐️ Аргументировать ⭐️
Находить обоснование, строить логические цепочки и видеть, где они нарушаются; проверять источники информации и проводить фактчекинг.

⭐️ Помогать другим ⭐️
Видеть ошибки собеседников, понимать природу их заблуждений и мягко убеждать в необходимости мыслить критически.

➡️ Записаться на курс

Все курсы 4brain

#курсы #обучение #развитие #навыки
This media is not supported in your browser
VIEW IN TELEGRAM
API
An API is a set of rules and protocols that allows different software applications and services to communicate with each other.

1. It defines how software components should interact.
2. Facilitates data exchange and functionality access between software components.
3. Typically consists of endpoints, requests, and responses.

SDK
An SDK is a comprehensive package of tools, libraries, sample code, and documentation that assists developers in building applications for a particular platform, framework, or hardware.

1. Offers higher-level abstractions, simplifying development for a specific platform.
2. Tailored to specific platforms or frameworks, ensuring compatibility and optimal performance on that platform.
3. Offer access to advanced features and capabilities specific to the platform, which might be otherwise challenging to implement from scratch.

The choice between APIs and SDKs depends on the development goals and requirements of the project.

Alex Xu

#api #sdk #ByteByteGo
🔥3
gRPC is a high-performance, open-source remote procedure call framework initially developed by Google. It leverages HTTP/2 for transport, Protocol Buffers as the interface description language, and provides features such as authentication, load balancing, and more.

Key Features of gRPC:

- Speed - gRPC is built on HTTP/2 and Protobufs for high throughput and low latency.

- Efficiency - The compact Protobuf binary format means smaller payloads than JSON.

- Type Safety - Protobufs are strongly typed.

- Polyglot - Write services in many popular languages.

- Great Ecosystem - Many tools for code gen, load balancing, monitoring, and more.

ByteByteGo

#api #grpc #ByteByteGo
Третья конференция Systems Design Online 🚀

Мы открываем продажи на третью конференцию, посвящённую проектированию современных информационных систем для бизнеса.

Мы стремимся развивать культуру проектирования эффективных информационных систем, делясь реальным практическим опытом, проверенными подходами и инновационными идеями. Именно поэтому главная тема конференции в этом году — «Компромиссы проектирования — баланс между атрибутами качества, финансированием и сроками».

В 2025 году конференция Systems Design Online пройдёт в два дня:

12 апреля (сб) — день докладов

13 апреля (вс) — день мастер-классов и воркшопов


Вас будут ждать:
— Более 15 докладов от опытных архитекторов, аналитиков и технических лидеров
— Два воркшопа с акцентом на практику
— 4 тематические секции: Архитектура, Интеграции, Инженерия данных и Информационная безопасность
— Неограниченный доступ к записям всех докладов конференции
— Постоянный чат в Telegram для живого общения с экспертами


Конференция Systems Design Online будет интересна:
— разработчикам и аналитикам
— архитекторам и руководителям ИТ-проектов
— всем, кто стремится повышать эффективность бизнес-процессов при помощи современных технологических решений


Стоимость билетов зависит от даты покупки:

До 15 марта:
от 3 900

После 15 марта:
— от 4 900

Билеты на воркшопы можно приобрести отдельно

Заявки на доклады этого года собираем до конца февраля и публикуем в канале и на сайте конференции.


Познакомиться поближе с докладами прошлых двух потоков SDO вы можете на нашем YouTube-канале:
— 2024 год
2021 год

Подробнее о конференции здесь

Канал конференции @systems_design_online
Domain-Driven Design: чистая архитектура снизу доверху

#статья #sbertech #ddd
🔥1
This media is not supported in your browser
VIEW IN TELEGRAM
Помню как в бытность работы сисадмином столкнулся с версиями.

Не то, чтобы Semantic Versioning был для меня темным лесом и глядя на эти цифры, разделенные точками, я не понимал, что они значат.

Просто все эти обновления казались лотереей. Когда можно сразу накатить мажорную версию, а когда нужно было последовательно раскатывать все минорные версии.

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

Постепенно в голове сложилась картина: Major – это глобальные изменения, Minor – новые фичи, Patch – исправления багов.

Вот что пишет об этом Alex Xu

Semantic Versioning - это схема управления версиями программного обеспечения, состоящий из трех частей: MAJOR.MINOR.PATCH.

🔹 MAJOR: Увеличивается при несовместимых изменениях API

🔹 MINOR: Увеличивается при добавлении функциональности обратно совместимым образом

🔹 PATCH: Увеличивается при исправлении ошибок с обратной совместимостью
Серия видео с разбором глав одной из популярных книг по DDD Вона Вернона "Реализация методов предметно-ориентированного проектирования" от Сергея Черкашина, - инженера из Авито.Автотека

#ddd #youtube #обучение
🔥1