Я развернул лямбда-функцию 'hello world' в AWS, написанную на Python 3.6, и измерил время инициализации при холодном запуске с AWS X-Ray, равное 2 миллисекундам при первом вызове.Затем я добавил еще две функции в файл исходного кода, развернул его и увидел, что время инициализации холодного запуска для той же функции «привет мир» теперь составляет 1,1 секунды.Размер загруженного пакета увеличился с 1,6 до 9,8 МБ из-за дополнительных библиотек баз данных, таких как sqlalchemy и т. Д .;но даже после увеличения выделения памяти до 512 МБ (со 128 МБ) время сократилось только до 1,0 секунды.
Ни одна из функций не развернута внутри VPC.
Возможно импортирование нескольких библиотексделано на глобальном уровне добавили 1 секунду к времени инициализации?
Исходный код выглядит так:
def test():
try:
return wrapper('hello world', type='text')
except Exception as e:
logger.error(e, exc_info=True)
Соответствующий импорт из обновленного кода являются:
from sqlalchemy import Column, ForeignKey, Integer, String, Float, DateTime, Boolean, MetaData
from sqlalchemy.dialects.postgresql import JSONB
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy.orm import relationship
from sqlalchemy import create_engine, exists
from sqlalchemy.pool import Pool, NullPool
from sqlalchemy.orm import sessionmaker
from sqlalchemy import create_engine
import sentry_sdk
from aws_xray_sdk.core import xray_recorder
from aws_xray_sdk.ext.sqlalchemy.query import XRaySessionMaker