0Pricing
API Rate Limiting & Scalability Patterns · Урок

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

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

«Горизонтальное и вертикальное масштабирование» — бесплатный урок API Rate Limiting & Scalability Patterns на CoddyKit. Это урок 4 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения API Rate Limiting & Scalability Patterns, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс API Rate Limiting & Scalability Patterns содержит 4 уроков всего.

Части этого урока еще не переведены и отображаются на английском.

Two Ways to Grow

When an API runs out of capacity you have two levers:

  • Vertical scaling (scale up) — make the machine bigger
  • Horizontal scaling (scale out) — add more machines

Each has very different cost and reliability profiles.

Vertical Scaling Explained

Vertical scaling means upgrading a single server: more CPU cores, more RAM, faster disks.

It is simple — no code changes — but you eventually hit the largest instance available, and that one box is a single point of failure.

Horizontal Scaling Explained

Horizontal scaling adds more identical servers behind a load balancer. Traffic spreads across the fleet.

  • No hard ceiling — add nodes as needed
  • One node failing does not take down the service

The Cost Curve

Vertical scaling cost rises steeply — top-tier hardware carries a premium. Horizontal scaling uses many commodity nodes, which is usually cheaper per unit of capacity at large scale.

Statelessness Enables Scale-Out

To scale out, any node must handle any request. That requires stateless services — no session data stored on the instance.

Push session and state to a shared store (Redis, a database) so nodes stay interchangeable.

// session in a shared store, not local memory
await redis.set('session:' + id, data, 'EX', 3600)

Auto-Scaling Groups

Cloud platforms add or remove nodes automatically based on metrics like CPU or request rate.

You define a min, max, and a target metric; the platform keeps the fleet sized to load.

min_instances: 2
max_instances: 20
target_cpu_percent: 60

When Vertical Still Wins

Scaling up is the right call when:

  • The workload is hard to distribute (a single large in-memory dataset)
  • You need a quick fix before re-architecting
  • Licensing is per-node and a bigger box is cheaper

Diminishing Returns

Adding nodes is not free scaling — shared resources (a single database, a lock) become the new bottleneck. This is why scaling the data tier often matters more than the app tier.

Combining Both

Real systems mix strategies: right-size each node (a bit of vertical) then run many of them (horizontal). The goal is the best cost per request at your reliability target.

Measuring Before Scaling

Never scale blindly. Profile first to find the real constraint — CPU, memory, I/O, or a downstream dependency. Scaling the wrong dimension wastes money and hides the true bottleneck.

Scaling and Cost Awareness

Capacity is not free. A fleet sized for peak sits idle at night, burning money. Combine auto-scaling with right-sizing and consider spot or reserved capacity to match spend to real demand.

Quick Check

Check your understanding of scaling directions.

Recap

You compared scaling strategies:

  • Vertical — bigger box, simple, but capped and a single point of failure
  • Horizontal — more boxes, resilient, needs statelessness
  • Auto-scaling sizes the fleet to load
  • Always measure the real bottleneck first

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

Урок «Горизонтальное и вертикальное масштабирование» бесплатный?

Да — полный текст урока «Горизонтальное и вертикальное масштабирование» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс API Rate Limiting & Scalability Patterns, подпишись на CoddyKit PRO. Курс API Rate Limiting & Scalability Patterns содержит 4 уроков всего.

Чему я научусь в уроке «Горизонтальное и вертикальное масштабирование»?

Разберитесь в двух основных способах увеличить ёмкость API — наращивании ресурсов узла и добавлении узлов — и научитесь выбирать между ними с учётом стоимости, ограничений и архитектуры. Ты практикуешь API Rate Limiting & Scalability Patterns с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать API Rate Limiting & Scalability Patterns?

Предыдущий опыт не требуется. API Rate Limiting & Scalability Patterns на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 4 из 4.

Сколько времени занимает урок «Горизонтальное и вертикальное масштабирование»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке API Rate Limiting & Scalability Patterns?

Да. Каждый урок API Rate Limiting & Scalability Patterns включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. Масштабируемость API
  2. Ключевые показатели масштабируемости
  3. Проектирование API без состояния и с состоянием
  4. Горизонтальное и вертикальное масштабирование
← Назад к API Rate Limiting & Scalability Patterns