В чем разница между инстансами C, M, T в AWS EC2?

«В чем разница между инстансами C, M, T в AWS EC2?» — вопрос из категории Облачные платформы, который задают на 23% собеседований Devops Инженер. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

В AWS EC2 инстансы C, M, T относятся к разным семействам, оптимизированным под разные типы рабочих нагрузок:

  • C (Compute Optimized): Оптимизированы для высокопроизводительных вычислений (CPU-intensive). Имеют высокое соотношение vCPU к памяти. Пример использования: пакетная обработка данных, видеокодирование, научные вычисления, высокопроизводительные веб-серверы. Пример инстанса: c5.xlarge (4 vCPU, 8 GiB RAM).
  • M (General Purpose): Сбалансированные инстансы с равным соотношением vCPU и памяти. Универсальное решение для большинства задач. Пример использования: веб-серверы, серверы приложений, небольшие и средние базы данных. Пример инстанса: m5.large (2 vCPU, 8 GiB RAM).
  • T (Burstable Performance): Инстансы с базовым уровнем производительности CPU и возможностью кратковременного "разгона" (burst) за счет накопленных CPU Credits. Экономичный вариант для рабочих нагрузок с переменной или низкой средней загрузкой. Ключевое отличие: требует мониторинга CPU Credits в Amazon CloudWatch. При исчерпании кредитов производительность падает до базового уровня (например, 20% от vCPU). Пример использования: среды разработки и тестирования (dev/test), микросервисы с низкой нагрузкой, небольшие веб-сайты. Пример инстанса: t3.micro (2 vCPU, 1 GiB RAM).

На практике выбор зависит от профиля нагрузки приложения и бюджета. Для стабильной высокой нагрузки берут C или M, для непостоянной с периодами простоя — T.