Microservices Calculator v1.0

Калькулятор микросервисов

Рассчитайте ресурсы микросервисной архитектуры: размер сервисов, сетевые задержки, надёжность цепочек, API Gateway, очереди сообщений и полную стоимость владения.

Загрузка калькулятора микросервисов...
6
Модулей расчёта
85%
Компаний мигрируют на MSA
Kafka
Стандарт очередей
gRPC
Протокол #1

Зачем считать микросервисную архитектуру?

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

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

Микросервисы — архитектурный стиль, при котором приложение разделено на небольшие автономные сервисы. Каждый сервис отвечает за одну бизнес-функцию, имеет собственную базу данных и общается с другими через API или очереди сообщений. Это даёт независимое развёртывание, масштабирование и выбор технологий для каждого домена.

User → API GW → OrderService → PaymentService → NotificationService

Сетевые задержки и fan-out

В монолите вызов функции занимает наносекунды. В микросервисах каждый вызов — сетевой запрос с латентностью 1-50 мс. При глубине цепочки в 5 хопов и fan-out 3 один пользовательский запрос генерирует десятки внутренних вызовов. P99 задержка растёт экспоненциально с глубиной цепочки. Это главный компромисс микросервисов.

p99 = avg_latency × depth × 2.5 (tail latency amplification)

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

Микросервисная архитектура активно внедряется в российских компаниях. Сбер, Яндекс, Тинькофф, Ozon и VK перешли на MSA для своих ключевых сервисов. Apache Kafka стала стандартом де-факто для межсервисного обменасообщениями: более 70% крупных IT-компаний в России используют Kafka в production.

Российские облачные провайдеры предоставляют managed-решения для микросервисов: Yandex Managed Kafka, VK Cloud Streams, managed Kubernetes и API Gateway. Для соответствия 152-ФЗ многие компании развёртывают Kafka и service mesh on-premise.

KFK

Apache Kafka

Распределённая очередь. Гарантия доставки, партицирование, репликация.
GW

API Gateway

Единая точка входа: маршрутизация, аутентификация, rate limiting, TLS.
SM

Service Mesh (Istio)

Sidecar-прокси: mTLS, circuit breaker, observability, traffic management.
gRPC

gRPC / Protobuf

Бинарный протокол: в 7-10x быстрее JSON REST, HTTP/2, streaming.

Возможности калькулятора

SVC

Размер сервиса

CPU и память на сервис, sidecar overhead (Istio/Linkerd), общие ресурсы кластера, количество нод.

NET

Межсервисная сеть

Сквозная задержка, p99 latency, fan-out, внутренний RPS, пропускная способность, трафик кластера.

HA

Надёжность

SLA цепочки, каскадные отказы, circuit breaker, retry budget, bulkhead pattern, время простоя.

GW

API Gateway

RPS на инстанс, overhead аутентификации, rate limiting, пиковые нагрузки, объём логирования.

MQ

Очереди сообщений

Пропускная способность Kafka/RabbitMQ, партиции, репликация, consumer lag, хранилище.

Стоимость

Инфраструктура в облаке (Yandex/VK/Selectel), стоимость команды, cognitive load, TCO.

ЧАСТЫЕ ВОПРОСЫ

Часто задаваемые вопросы

Микросервисная архитектура (MSA) — это подход, при котором приложение состоит из набора небольших автономных сервисов, каждый из которых отвечает за одну бизнес-функцию. В отличие от монолита, где весь код в одном процессе, микросервисы развёртываются, масштабируются и обновляются независимо. Каждый сервис имеет собственную базу данных (Database per Service). Общение между сервисами — через API (REST, gRPC) или очереди сообщений (Kafka, RabbitMQ).
Типичный микросервис на Java/Spring Boot потребляет 500m CPU и 512Mi RAM. Go-сервис — 100-250m CPU и 128-256Mi RAM. Python/FastAPI — 250-500m CPU и 256-512Mi RAM. С учётом sidecar-контейнера (Istio Envoy) добавьте ещё 100m CPU и 128Mi RAM. При 3 репликах на сервис и 12 сервисах суммарно потребуется 18-24 vCPU и 18-24 ГБ RAM, что соответствует 3-6 нодам по 8 vCPU / 32 ГБ.
Средняя сквозная задержка = средняя задержка одного хопа × глубину цепочки вызовов. Например, при 5 мс на хоп и глубине 4 — это 20 мс среднее. Но P99 (99-й процентиль) обычно в 2-3 раза выше среднего из-за tail latency amplification: если один из хопов тормозит, весь запрос ждёт. При fan-out (параллельных вызовах) P99 определяется самым медленным из параллельных вызовов. Поэтому рекомендуется глубина цепочки не более 3-4 хопов.
Circuit Breaker (Hystrix, Resilience4j) защищает от каскадных отказов. Когда один сервис перестаёт отвечать, без circuit breaker все вызывающие его сервисы тоже зависнут, ожидая timeout. Circuit Breaker отслеживает процент ошибок: при превышении порога (например, 50%) он «открывается» и мгновенно возвращает fallback-ответ, не отправляя запросы к упавшему сервису. Через заданный период (например, 10 секунд) он переходит в half-open и пробует отправить один запрос. Это предотвращает эффект домино.
Apache Kafka — для высоконагруженных систем (10K+ msg/s), event streaming, event sourcing. Гарантирует порядок в рамках partition. RabbitMQ — для классических задач: task queues, pub/sub с умной маршрутизацией (routing keys, exchanges). Проще в эксплуатации при нагрузке до 5-10K msg/s. NATS JetStream — ультранизкая задержка, cloud-native, проще Kafka, но менее зрелая экосистема. В России 70%+ компаний выбирают Kafka для production, RabbitMQ — для внутренних систем.
Стоимость складывается из: 1) Compute — vCPU и RAM для всех инстансов всех сервисов (в Yandex Cloud ≈ 1200 ₽/vCPU и 300 ₽/ГБ RAM в месяц). 2) Overhead — инфраструктурные компоненты (API Gateway, Service Mesh, мониторинг, Kafka, Redis) — +30-50% к compute. 3) Окружения — dev, staging, production — умножайте на количество. 4) Команда — оптимально 1-2 сервиса на разработчика; при 3+ начинается когнитивная перегрузка. Микросервисы дороже монолита в инфраструктуре, но дешевле в масштабировании команды.
API Gateway — единая точка входа для внешних клиентов. Он выполняет: маршрутизацию запросов к нужному сервису, аутентификацию (JWT/OAuth2), rate limiting (защита от DDoS и абьюза), TLS-терминацию, агрегацию ответов нескольких сервисов, кэширование, логирование. Популярные решения: Kong, NGINX, Envoy, Yandex API Gateway. Без API Gateway клиенты должны были бы знать адреса всех сервисов и самостоятельно агрегировать ответы.
Формула: partitions >= target_throughput / throughput_per_partition. Одна partition обрабатывает примерно 5000-10000 msg/s при типичном размере сообщения. При 50K msg/s нужно минимум 10 partition. Но учтите: 1) Количество consumer в одной group не может превышать количество partition. 2) Больше partition — больше файловых дескрипторов на брокере. 3) Rebalancing замедляется. 4) Порядок гарантирован только в рамках одной partition. Рекомендация: начните с 12-24 partition и масштабируйте по необходимости.
Лиана Арифметова
АВТОРverifiedред. calcal.ru

Лиана Арифметова

Создатель и главный редактор

Миссия: демократизировать сложные расчёты. Превратить страх перед числами в ясность и контроль. Девиз: «Любая повторяющаяся задача заслуживает своего калькулятора».

Mathematical Engineering · МФТИ · редактирует каталог с 2012 года

Был ли этот калькулятор полезен?

ОТКАЗ ОТ ОТВЕТСТВЕННОСТИ

Инструмент справочный — не заменяет эксперта

Только для информационных целей. Все расчёты, результаты и данные, предоставляемые инструментом, носят исключительно ознакомительный и справочный характер. Они не являются профессиональной консультацией — медицинской, юридической, финансовой, инженерной или иной.

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

Профессиональные решения — медицинские, финансовые, инженерные — должны приниматься только после консультации с квалифицированным специалистом. Не используйте автоматический расчёт как единственное основание для важных решений.

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

СМЕЖНЫЕ ИНСТРУМЕНТЫ

Похожие калькуляторы

15

Калькулятор API Rate Limit (quota)

Рассчитайте RPS, RPM и безопасные интервалы запросов. Узнайте, как избежать ошибки HTTP 429.

/api-rate-limit-calculator

Объединить PDF онлайн — без загрузки на сервер

Склейка PDF в браузере через pdf-lib. До 20 файлов, до 50 МБ каждый. Локально, без отправки на сервер (152-ФЗ).

/obyedinit-pdf-onlajn-besplatno

Сжать PDF онлайн — уменьшить размер локально

Сжатие PDF в браузере без потери качества. 3 уровня (object streams, удаление метаданных). До 50 МБ. Через pdf-lib, локально.

/szhat-pdf-onlajn-umenshit-razmer

Разделить PDF на страницы — извлечь нужные онлайн

Разделение PDF на страницы локально: каждая страница отдельным файлом, диапазон или группами. Через pdf-lib, без отправки на сервер.

/razdelit-pdf-na-stranicy-onlajn

JPG в PDF — конвертер с объединением

Конвертация JPG/PNG в PDF в браузере: до 30 картинок в один документ. Форматы A4/A3/Letter или подгонка под изображение.

/jpg-v-pdf-konverter

Повернуть страницы PDF онлайн

Поворот всех или указанных страниц PDF на 90/180/270° за миллисекунды. Lossless. Через pdf-lib, без отправки на сервер.

/povernut-pdf-stranitsy-onlajn

Водяной знак на PDF онлайн (кириллица)

Нанесение текстового знака («КОНФИДЕНЦИАЛЬНО», «ЧЕРНОВИК») на все страницы PDF. Поддержка русского текста через Canvas. 4 положения, регулировка прозрачности.

/dobavit-vodyanoj-znak-na-pdf

Нумерация страниц PDF онлайн

Проставьте номера страниц PDF в браузере: 4 формата, 6 положений, пропуск титульной, кастомный старт. Поддержка кириллицы. Через pdf-lib + Canvas.

/numerovat-stranitsy-pdf-onlajn

PDF в JPG / PNG — конвертер страниц

Рендеринг каждой страницы PDF в картинку через pdfjs-dist (Mozilla). 4 уровня качества: 96 / 150 / 300 DPI и lossless PNG. До 50 МБ.

/pdf-v-jpg-konverter-onlajn

Извлечь текст из PDF онлайн

Извлечение текста из PDF в браузере через pdfjs-dist (Mozilla). Plain text, с разделителями страниц или JSON. Файлы не уходят на сервер.

/extract-text-iz-pdf-onlajn

Сжать JPG до 100 КБ для документов

Сжатие JPG до точного размера в КБ (50, 100, 200, 500, 1000) через бинарный поиск quality. Госуслуги, ЕГЭ, банки. Через browser-image-compression.

/szhat-jpg-onlajn-do-100kb

Удалить EXIF из фото — GPS и метаданные

Удаление EXIF (геолокация, модель камеры, дата) из JPEG. Сначала показывает что внутри, потом удаляет. 152-ФЗ. В браузере, без отправки.

/udalit-exif-iz-foto-online

Изменить размер фото в пикселях

Изменение размера JPG/PNG/WebP с сохранением пропорций. 6 пресетов (Full HD, HD, 1080×1080, 9:16). Через Canvas API, без сервера.

/izmenit-razmer-foto-onlajn-px-mb

WebP в JPG / PNG — конвертер онлайн

Конвертация WebP → JPG / PNG в браузере. До 30 файлов одновременно. Через Canvas API, без сервера. Поддержка Госуслуг и старых форм.

/webp-v-jpg-png-konverter

Повернуть фото — точно по градусам

Поворот картинки на любой угол (90°/произвольный) с превью. Цвет фона для уголков при произвольных углах. JPG/PNG/WebP. Через Canvas.

/povernut-foto-onlajn-besplatno