Если я выделю свою облачную функцию 256 МБ, будет ли каждый ее экземпляр функции иметь доступ к 256 МБ? - PullRequest
0 голосов
/ 19 января 2019

Если я создаю облачную функцию Google и выделяю ей 256 МБ, означает ли это, что каждый созданный экземпляр этой функции будет иметь доступ к такому объему ОЗУ, или это означает, что все созданные экземпляры функции должны будут совместно использовать эти256 МБ?

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

1 Ответ

0 голосов
/ 19 января 2019

Облачные функции не запускаются одновременно в данном экземпляре. Допустим, у вас есть 2 запроса одновременно, 2 экземпляра будут созданы для обработки этих запросов, и каждый экземпляр будет иметь 256 МБ. Если поступает третий запрос и один из предыдущих запросов завершен, то облачные функции могут повторно использовать запущенный экземпляр и направить ему запрос.

Ваша функция может неправильно использовать глобальные переменные. Или вы можете записывать файлы в папку /tmp, чьи данные, записанные на томе, хранятся в памяти, как объяснено в другом ответе (затем следует удалить файл перед завершением каждой функции). Вы можете посмотреть документацию Советы по облачным функциям , чтобы узнать подробности оптимизации.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...