cesko-digital / skill-matcher

Nástroj pro snazší vyhledávání a oslovování dobrovolníků podle dovedností

Home Page:https://matcher.ceskodigital.net

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Dořešit pomalý start aplikace

zoul opened this issue · comments

Lambdy mají pomalý studený start, pro uživatele aplikace to asi bude matoucí, je pro nás relevantní SnapStart?

SnapStart nikoliv:

SnapStart supports the Java 11 and Java 17 (java11 and java17) managed runtimes. Other managed runtimes (such as nodejs18.x and python3.11), custom runtimes, and container images are not supported.

Každopádně to, co vidíme, není běžný studený start Lambdy, bude to něco na naší straně. Probírali jsme ve Slacku a Martin Venyš případně doporučuje například Redis ve Vercelu pro kešování, pokud to například trvá dlouho kvůli tomu, že děláme nějaký index dat z Airtable. FYI @petr-ngn, tohle by případně byla hezká nová feature, bohužel výměnou za komplikace kódu.

@zoul za mě ok. Jak jsme již řešili ve Slacku, pomalý studený start je pravděpodobně způsoben velkým objemem použivaných Python balíčků v aplikaci, přičemž zvýšením objemu paměti na 512 MB se podařilo snížit runtime na cca 30 sekund. Když tato aplikace byla provotně nazasena na PythonAnywhere platformu, aplikace vyžadovala cca 800 MB až 1 GB paměti. V dlouhodobém běhu by bylo vhodné danou aplikaci předělat tak, aby využívala co nejméně balíčků za účelem mitigace pomalého studeného startu.

Případně to ještě profilovat, abychom se ujistili, že ten problém je určitě ve velkém počtu závislostí.

(Do záznamu: zkoušel jsem zvětšit paměť kontejneru na 1 GB, chování se v podstatě nezměnilo.)