Все потоки
Поиск
Написать публикацию
Обновить
42.5

Микросервисы *

Микросервисная архитектура и все что с ней связано

Сначала показывать
Порог рейтинга
Уровень сложности

Микрофронтенды: зачем дробить фронтенд и почему это может быть хорошо

Уровень сложностиСредний
Время на прочтение15 мин
Количество просмотров11K

Привет, Хабр! Меня зовут Александр Гончаров, и я — Head of Frontend в ГК Юзтех. В коммерческом IT я c 2011 года, регулярно выступаю как спикер на конференциях и митапах, а также с 2014 года веду подкасты, в том числе «Суровый веб». Мы в Юзтехе занимаемся заказной и продуктовой разработкой с 2006 года, в моём отделе около 80 человек, а в команде текущего проекта — 50 разработчиков.

Ещё любопытные факты с цифрами: у меня три высших образования (также сейчас учусь в аспирантуре), четыре кошки, более 300 записанных выпусков подкастов и больше 200 проведенных стримов.

Эта статья — адаптация моего доклада, который я рассказал на TechleadConf 2024. В ней я не буду углубляться в технические детали реализации микрофронтендов и архитектурных паттернов, а вместо этого разберу, как они могут помочь командам работать быстрее и без боли.

Читать далее

System Design для начинающих: всё, что вам нужно. Часть 3

Уровень сложностиПростой
Время на прочтение10 мин
Количество просмотров25K

Вам не нужно изучать какую‑либо теорию, кроме этой статьи, чтобы начать собеседоваться. После прочтения смело приступайте к решению типовых System Design задач.

Изучая System Design, вы часто видите только теоретические материалы. В этой статье я постарался показать в том числе практическую реализацию многих вещей, чтобы вы не просто готовились к собеседованиям, но и знали, как эти вещи используются в реальном мире.

Читать далее

Почему JWT — не панацея: разбор проблем сессий и безопасности

Уровень сложностиСредний
Время на прочтение6 мин
Количество просмотров27K

JWT для сессий: удобство или головная боль?

JSON Web Token (JWT) приобрёл популярность как удобный способ аутентификации и передачи данных между клиентом и сервером. Его ценят за простоту, stateless-подход и гибкость. Однако большинство гайдов рассказывают только о плюсах, забывая о недостатках.

В этой статье мы разберём основные проблемы использования JWT для хранения пользовательских сессий и обсудим более надёжные альтернативы.

Читать далее

App.Farm CI. Часть II. Конвейер — швейцарский нож: особенности запуска мультиарендного процесса разработки

Уровень сложностиПростой
Время на прочтение11 мин
Количество просмотров899

Привет, Хабр! На связи команда разработки App.Farm в РСХБ-Интех. Хотели бы представить вам следующую часть цикла статей об App.Farm CI, одной из подсистем нашего продукта — PaaS App.Farm.

App.Farm — платформа по типу PaaS для стандартизации процесса разработки бизнес-приложений: от хранения исходного кода до запуска сервисов. App.Farm CI - подсистема обеспечивающая хранение кода, артефактов, автоматизацию сборки.

Какие темы затронем в этой части:

- Gitlab для процесса разработки

- Структура компании

- Базовые настройки проектов

- Документация

- CI как сервис

Читать далее

Событийный заказ: Python и Kafka

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров4.7K

Привет, Хабр!

В этой статье рассмотрим, как на примере магазина котиков — кейса, где каждый заказ превращается в событие — создать событийно‑ориентированную систему обработки заказов с использованием Python, Kafka и Django REST Framework. Создадим REST API для приёма заказов, настроим Kafka‑продюсеры, консьюмеры и реализуем компенсационные транзакции по принципу Saga.

Читать далее

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

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров5.2K

Архитектура — это всегда баланс между контролем и гибкостью. Микросервисы (MSA) хороши тем, что чётко разделяют логику, дают независимое масштабирование и удобны в отладке. Каждый сервис сам за себя, отвечает за конкретную зону ответственности и общается с другими через API — обычно REST или gRPC. Вроде бы идеальная схема, но со временем возникает проблема: сервисов становится всё больше, а их связи усложняются.

Читать далее

Service Mesh глазами бэкендера: умный дирижёр микросервисного оркестра

Уровень сложностиПростой
Время на прочтение13 мин
Количество просмотров6.1K

Service Mesh – это «умная» сеть для управления трафиком между сервисами. Углубимся в детали и разберём, как эта технология упрощает жизнь DevOps-инженеров и разработчиков.

Привет, Хабр! Алексей Ушаровский — бэкенд разработчик в международном финтехе, эксперт Skillbox по Java и Kotlin. На текущем проекте ему приходится сталкиваться не только с бэкендом, но и с технологиями DevOps. На закрытом эфире для комьюнити Skillbox Code Experts рассказал про свой опыт работы с технологией Service Mesh. Делимся с вами в этой статье.

Читать далее

Взгляд на JWT как на инструмент построения стройной архитектуры приложения

Уровень сложностиСредний
Время на прочтение11 мин
Количество просмотров8.2K

Три года назад мне поручили задачу по распилу сразу двух монолитов с вынесением в общий микросервис данных пользователей и созданием единого механизма аутентификации и авторизации. Конечной целью этого действа было создание надежной базы для перехода всей разработки в команде на микросервисную архитектуру.

Тогда-то я впервые и применил на практике JWT, результатами чего остался очень доволен. В этой статье я хочу поделиться своим опытом работы с этим стандартом на конкретных примерах и рассказать, почему он удовлетворяет все мои потребности как разработчика в самых разных проектах: новых и долгоживущих, микросервисных и монолитных, в ситуациях, когда нужно быстро накидать MVP, и когда требуется не спеша и вдумчиво заложить основу на долгие годы качественной разработки.

Читать далее

Микросервисы на пальцах: API‑Gateway, API‑Composition, KrakenD, FastAPI

Время на прочтение14 мин
Количество просмотров32K

Количество современных приложений, построенных на микросервисной архитектуре, очень велико. А сами микросервисы стали уже больше обыденностью, чем какой-то редкостью. В этом материале рассмотрим API-Gateway, BFF и композицию API — три базовых шаблона, которые можно встретить почти в каждой системе с микросервисами. Наша задача — понять, для чего они нужны, какие проблемы решают и создают. Пройдемся по теории и развернем реальный пример на инфраструктуре.
Читать дальше →

Что такое правильная документация проекта

Уровень сложностиСредний
Время на прочтение8 мин
Количество просмотров10K

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

Читать далее

Kubernetes в джунглях агротех: как мы спасаем банановые кластеры

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров2.1K

Перед вами не просто технический мануал — это SimCity для кластеров с банановым сюжетом! Если вы только начали выращивать свои первые «бананы» (поды) в Kubernetes и хотите разобраться в базовых механиках через игровые аналогии, то этот материал для вас. Я Михаил Костельцев, главный инженер Центра бесперебойной поддержки платформенных и интеграционных решений в РСХБ-Интех.

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

Вперед к бананам!

System Design для начинающих: всё, что вам нужно. Часть 2

Уровень сложностиПростой
Время на прочтение11 мин
Количество просмотров26K

Вам не нужно изучать какую‑либо теорию, кроме этой статьи, чтобы начать собеседоваться. После прочтения смело приступайте к решению типовых System Design задач.

Изучая System Design, вы часто видите только теоретические материалы. В этой статье я постарался показать в том числе практическую реализацию многих вещей, чтобы вы не просто готовились к собеседованиям, но и знали, как эти вещи используются в реальном мире.

Читать далее

Памятка по XSD и XML

Уровень сложностиПростой
Время на прочтение11 мин
Количество просмотров24K

Самое главное стоит понимать, что XSD (XML Schema Definition) – это схема, то есть описание данных взаимодействия. Схемы бывают разные, например, наша XSD, которую обычно используют для описания структур в формате XML, или JSON-schema - для описания структур в формате JSON. Использование схем в контрактах API сейчас уже является стандартом де-факто, так как это удобно.

Основные объекты, из которых состоит XSD-схема:
- Элементы;
- Типы;
- Индикаторы порядка.

Читать далее

Ближайшие события

Как превратить монолитную архитектуру в микросервисную — и зачем

Уровень сложностиСредний
Время на прочтение6 мин
Количество просмотров9.6K

Привет, Хабр! Я Расим Сулейманов, инженер-программист в ПСБ. Микросервисная архитектура приложений становится все более популярной, особенно среди крупных команд разработчиков. У этого подхода есть много преимуществ по сравнению с монолитом, но перейти на него получается не у каждого проекта. В этой статье разбираю на примерах, как превратить монолитную архитектуру в микросервисную, и рассказываю, зачем это делать.

Читать далее

Просто пишите код. Часть 1

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров7.9K

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

Постарался создать простой чек лист для принятия решения о выделения в микросервис конкретного домена.

Читать далее

BPMS мёртв в энтерпрайзе

Уровень сложностиСредний
Время на прочтение8 мин
Количество просмотров3.8K

Мы инженерная компания, которая занимается производством инструментов и платформ для корпоративной разработки. Недавно перевыпущенный для Jmix BPM-плагин активно набирает популярность в России и в мире. Мы получаем обратную связь от разработчиков и руководителей проектов. Многие сетуют на ограниченность BPMS. Он мёртв, окончательно и бесповоротно.

Ну просто потому, что для сколь-либо понятных и устоявшихся на рынке деловых или отраслевых процессов уже представлены специализированные платформы, а настроить что-то прорывное и кастомное на единой унифицированной BPMS платформе всё равно невозможно. Вендоры в погоне за расширением рынка превратили свои платформы в неповоротливых монстров по мере перетаскивания в коробки удачных фичей с клиентских проектов. Особенно веселят модули процессной аналитики, которые почти никто не использует. Нет области применения для этого класса систем, она сузилась до того предела, за которым содержать отдельную большую платформу в контуре предприятия становится экономически нецелесообразно. На смену идет процессная разработка на open-source стеке и с более высокой инженерной культурой внутри организации, необходимой для скорейшего восприятия и адаптации под нужды предприятия новых технологических возможностей (облака, роботы, ИИ и т. п.).

Цифровая и бизнес трансформация

Бизнес трансформация и цифровая трансформация гораздо шире, чем оптимизация организационной структуры или цепочек взаимодействия внутри предприятий. Современная передовая практика в области процессного управления предлагает начинать с цепочек создания ценности, проходя через этапы переобучения, изменений культурного кода и принципов взаимодействия внутри корпоративной среды. Чтобы выживать и процветать во все более конкурентном цифровом мире, предприятиям необходимо культивировать у себя способность к постоянной адаптации. Но адаптации не в варианте постоянных метаний “из стороны в сторону”, а с учетом стратегических целей компании и с упором на максимальную эффективность.

Читать далее

Внедрение RabbitMQ в облачную платформу: проблемы и решения

Уровень сложностиСредний
Время на прочтение6 мин
Количество просмотров3.5K

В статье рассматриваем, как RabbitMQ интегрирован в dBrain, какие операторы использовались для управления кластерами, а также с какими проблемами разработчики столкнулись в процессе внедрения.

Читать далее

Istio для практиков: как упростить управление микросервисами

Уровень сложностиСредний
Время на прочтение8 мин
Количество просмотров6.6K

Статья посвящена Istio — платформе для создания service mesh. Она объясняет ключевые функции инструмента: управление трафиком, защита коммуникаций через mTLS и сбор метрик для мониторинга. Также рассматриваются примеры конфигурации: как Istio помогает в управлении сетевыми взаимодействиями и повышает устойчивость систем. Узнайте, помогает ли Istio в работе с распределёнными системами.

Читать далее

NATS, SAY NOT ONLY RabbitMQ and KAFKA

Уровень сложностиПростой
Время на прочтение10 мин
Количество просмотров8K

В данной публикации я хочу рассказать про относительно новый брокер сообщений NATS (Neural Autonomic Transport System). А также сравнить его с более популярными и известными брокерами RabbitMQ и Apache Kafka.

Читать далее

Разбираемся в проектировании микросервисов. Основные паттерны (Часть 2)

Уровень сложностиПростой
Время на прочтение9 мин
Количество просмотров16K

Привет, Хабр!  

В прошлой статье мы начали разговор о паттернах микросервисов (Часть 1). Ну что ж, давайте продолжим!

Паттерн «API-шлюз» (API Gateway)

Итак, следующим популярным шаблоном является паттерн API Gateway, который часто упоминается в контексте микросервисной архитектуры. Этот шаблон основывается на использовании шлюза, находящегося между клиентскими приложениями и микросервисами, предоставляя единую точку входа для всех клиентских запросов.

Читать далее