Как выбрать вычислительные ресурсы для узлов кластера с горизонтальным масштабированием?
==========================================================================================

 При горизонтальном масштабировании мы добавляем больше узлов в кластер для обработки большей нагрузки. Но по прежнему мы можем выбирать сколько мощности (CPU, RAM) будет у каждого узла кластера.  
  

Когда кластер управляется Kubernetes - очень просто установить лимит по CPU и памяти для Pod'ов. Как выбрать оптимальный размер CPU и памяти для узлов кластера (или Pod'ов в Kubernetes)?  
  

Например, в кластере есть 3 узла с 1 vCPU и 1GB RAM каждый. Чтобы обрабатывать больше запросов есть 2 варианта:  
  
* Добавить 4й узел с 1 vCPU и 1GB RAM
* Добавить мощности в каждый из 3 узлов кластера (например, 2 vCPU и 2GB RAM)

  
  

Очевидным кажется решением сравнить оба варианта по пропускной способности и стоимости и выбрать оптимальный. Существуют ли более продвинутые подходы к расчету оптимального размера вычислительных ресурсов для узлов кластера с горизонтальным масштабированием? 

 Ответ связан с такими метриками производительности, как **latency** и **throughput**.  

Latency - временной интервал между отправкой запроса и получением ответа.  

Throughput - скорость обработки запросов (requests per second).  

Latency влияет на throughput. Больше latency - меньше throughput.  

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

Добавление дополнительных экземпляров сервиса увеличивает throughput (при условии отсутствия bottleneck-ов).  

То есть, выбирайте CPU и RAM таким образом, чтобы время ответа сервиса было оптимальным, а для обработки большего количества запросов одновременно, добавляйте новые экземпляры сервиса.