Perbandingan waktu mulai Cold/Warm AWS Lambda per runtime 2021/09
(filia-aleks.medium.com)<p>- Menguji metode POST dengan alur API-Gateway → AWS Lambda → DynamoDB <br />
- Menguji masing-masing memori 128/256/512/1024/10240MB<br />
- Cold Start <br />
→ Secara keseluruhan, Rust paling cepat. Hanya pada 128Mb Python menempati peringkat pertama<br />
→ Sebagian besar cepat, kecuali Java dan .NET <br />
→ Java bahkan tidak bisa mulai pada 128Mb, tetapi GraalVM bisa <br />
- Warm Start <br />
→ Golang dan Rust adalah pemenangnya<br />
→ .Net juga menunjukkan performa yang hampir mirip dengan Go/Rust, tetapi hanya setelah 1k eksekusi berulang (setelah JIT)<br />
→ GraalVM juga menunjukkan performa stabil yang mirip dengan .Net, dan sedikit lebih lambat daripada Rust/Go. Tidak berjalan baik pada setup minimum<br />
→ Java tepat di belakang GraalVM. Java juga baru menunjukkan performa setelah 1~3k pengulangan seperti .Net<br />
→ Python menunjukkan performa bagus yang stabil, tetapi terlalu lambat pada 128MB <br />
→ Ruby menunjukkan performa yang mirip dengan Python, tetapi setelah sekitar 20 menit (15k pengulangan) ada sedikit peningkatan pada duration <br />
→ Node.js adalah runtime paling lambat. Duration-nya juga paling panjang<br />
<br />
- Jika dilihat dari Cold + Warm, Golang dan Rust adalah pemenangnya. Keduanya selalu menunjukkan hasil yang cepat dan stabil <br />
<br />
- Runtime yang dibandingkan: 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 komentar