yazılmış AWS Lambda fonksiyonları için herhangi bir performans/işlevsellik farklılıklar var mı. Java ile node.js'ye kıyasla daha rahatım ama node.js'deki Lambda işlevlerinin Java'dan daha popüler olduğunu görüyorum. Java tabanlı ve nodejs tabanlı lambda işlevleri arasında herhangi bir performans farkı var mı? Lambda sayesindeBen bir uygulamanın arka uç için AWS Lambda'ya kullanmayı planlıyorum node.js/Java
cevap
, bu çalışma zamanı performansı node.js veya Python olandan çok daha iyi bu. AWS Lambda reuse it's initialized containers ve soğuk çalıştırma gecikme
ve/veya
olmadan daha iyi bir performans yararlanabilir olacak - Onlar düzenli çağrılan edilir- : Yani eğer Java Lambda fonksiyonları mantıklı demektir
-
uzun bir çalışma zamanını sahip
- - senin işlevi örneğin çalışıyorsa
Soğuk karşılaştırır this github project bakmak isteyebilirsiniz node.js daha fonksiyonu kendisi hızlı büyüklükte bir düzen çalışıyorsa 1 veya 2 dakika boyunca, gerçekten başlatma yaklaşık 5 saniye umurumda değil başlangıç saatleri.
Java'nın kötü soğuk başlarBir büyük faktör muhtemelen Java projeler çoğunlukla örneğin çok daha büyük olduğu gerçektir Bir node.js işlevi. Herhangi bir şekilde, başlangıçtaki gecikmeyi azaltmak için işlevleri olabildiğince küçük tutmaya çalışmalısınız. Programlama dili seçerken
Ve tabii ki performansın
tek faktör olmamalıdır. Kişisel olarak, node.js'nin örn. JSON verileriyle, bu yüzden işlevlerimin çoğunda kullanıyorum.
Java fonksiyonları genellikle daha fazla kaynak gerektiren ve NodeJS işlevlerine kıyasla, soğuk baştan yanıt vermek çok daha uzun sürer. Aksi halde fark yoktur. Java daha yavaş bir başlangıç süresine sahip iken
"Soğuk bir başlangıçtan ne demek istiyorsunuz?" "? – suku
İşlev herhangi bir istek almıyorsa, Amazon bunu herhangi bir kaynak kullanmadan otomatik olarak Lambda sunucularından siler. Eğer bu gerçekleşirse, isteğin işlenmesinden önce, fonksiyonda bir talep geldiğinde, bir lambda sunucusuna yeniden dağıtılması gerekir. Buna "soğuk başlangıç" denir. –
Bilgilendirmek için teşekkürler. Basit java crud işlevinin soğuk başlamadan yanıt vermesi için yaklaşık zaman nedir? Hem Java hem de nodejs, yürütmek için yaklaşık olarak aynı miktarda maksimum bellek kullanıyor mu? – suku
Bu, bir fikir meselesi değil, ölçülebilir bir gerçek gibi görünmüyor: https://forums.aws.amazon.com/thread.jspa?messageID=691551 – Atifm