AWS Lambda çalışma zamanlarına göre Cold/Warm başlangıç süreleri karşılaştırması 2021/09
(filia-aleks.medium.com)<p>- API-Gateway → AWS Lambda → DynamoDB akışıyla POST metodu test edildi <br />
- 128/256/512/1024/10240MB bellek için ayrı ayrı test yapıldı<br />
- Cold Start <br />
→ Genel olarak en hızlısı Rust. Yalnızca 128Mb'de Python 1. sırada<br />
→ Java ve .NET hariç çoğu hızlı <br />
→ Java 128Mb ile başlatılamıyor bile, ancak GraalVM mümkün <br />
- Warm Start <br />
→ Kazananlar Golang ve Rust<br />
→ .Net de Go/Rust'a neredeyse çok yakın performans gösteriyor, ancak yalnızca 1k tekrar çalıştırmadan sonra mümkün (JIT sonrası)<br />
→ GraalVM de .Net'e benzer şekilde istikrarlı performans gösteriyor ve Rust/Go'dan biraz daha yavaş. Minimum kurulumda iyi çalışmıyor<br />
→ Java, GraalVM'in hemen arkasında. Java da .Net gibi ancak 1~3k tekrar sonrasında performans veriyor<br />
→ Python istikrarlı ve iyi performans gösteriyor, ancak 128MB'de çok yavaş <br />
→ Ruby, Python'a benzer performans gösteriyor, ancak yaklaşık 20 dakika sonra (15k tekrar) sürede (`duration`) hafif bir artış oluyor <br />
→ En yavaş çalışma zamanı Node.js. Süresi de en uzun olan o<br />
<br />
- Cold + Warm birlikte değerlendirildiğinde kazananlar Golang ve Rust. Her zaman hızlı ve istikrarlı sonuçlar gösteriyorlar <br />
<br />
- Karşılaştırılan çalışma zamanları: NodeJs(14.x), Python(3.9), Go(1.x), Ruby(2.7), .Net(3.1), Java (11), Rust(1.54.0), GraalVM(21.2)<br />
</p>
5 yorum