Чем облачный прогон облака Google отличается от безрезультатной технологии тем, насколько он масштабируем? - PullRequest
0 голосов
/ 16 апреля 2019

Как объявил Google, новый облачный сервис работает на облачной платформе Google.Google говорит, что это масштабируемая технология без сервера.Чем она отличается от безсерверной технологии и как она будет масштабируемой?

Ответы [ 2 ]

0 голосов
/ 20 мая 2019

Я только что увидел этот ответ и хотел его исправить: Google Cloud Run - это переопределение API-интерфейсов Knative с использованием внутренней серверной технологии Google (а не реализации Knative OSS).

GoogleВнутренняя технология имеет много зависимостей от других функциональных возможностей, не относящихся к OSS (Stubby, Borg, LOAS и т. д.), но также имеет проверенные возможности работы с несколькими арендаторами и масштабирования, что означало, что мы (Google) использовали двунаправленный подход - создатьИнтерфейс и реализация OSS в современной инфраструктуре, а также предоставляет управляемый сервис, который будет ближе к Lambda.Google также предлагает Cloud Run на GKE, который действительно запускает программное обеспечение OSS, упакованное так, чтобы хорошо соответствовать GCP.См. Выберите подходящую платформу в разделе на маркетинговой странице Cloud Run для сравнения возможностей между ними.

Модель ценообразования для Cloud Run основана насекунды процессора и использование оперативной памяти;Вы можете выбрать (для Knative и Cloud Run), сколько параллельных запросов может выполнить каждый контейнер - это определяет, сколько экземпляров будет создано для обработки запросов.(Обратите внимание, что лямбда в основном заставляет это число равняться 1 - параллелизм не допускается.)

Если у вас есть 100 запросов в секунду, и каждый занимает 3 секунды, то у вас будет следующее число экземпляров вдругой параллелизм:

  • ConcurrencyCount = 1: 300 экземпляров
  • ConcurrencyCount = 10: 30 экземпляров
  • ConcurrencyCount = 80: 4 экземпляра (по умолчанию)
  • ConcurrencyCount = 200: 2 экземпляра
  • ConcurrencyCount = 300: 1 экземпляра

Вы должны установить ConcurrencyCount на основе того, сколько запросов может обработать ваше приложение без одновременного снижения задержки;это, вероятно, потребует некоторых экспериментов.По умолчанию хорошо работает для приложений, которые в основном выбирают данные из одной или двух баз данных, а затем выполняют небольшую обработку.Если вы получаете видео, а затем транскодируете его локально, то что-то вроде 1 или 2 будет иметь больше смысла.

0 голосов
/ 16 апреля 2019

Cloud Run - это серверное предложение, построенное на основе Knative (серверная платформа с открытым исходным кодом). Он отличается от большинства безсерверных технологий тем, что не имеет ограничений по языку программирования (см. docs ).

Масштабирование в управляемом Cloud Run (не Cloud Run в GKE) основано на concurrency или количестве одновременных запросов, которые ваша служба может обрабатывать одновременно.

Вам также выставляется счет только за время обработки экземпляра любым запросом. Если ваш экземпляр отвечает на 100 запросов за 10 секунд, вам будет выставлен счет только за эти 10 секунд. (однако вам также будет выставлен счет за 10 секунд, если в течение 10 секунд выполняется только 1 запрос, поэтому будьте осторожны с масштабированием экземпляра). ( цены )

Это первый выпуск, поэтому есть еще много ограничений (например, невозможность подключиться к Cloud SQL, о котором я написал статью о ). Вы можете увидеть полный список поддерживаемых услуг здесь

...