12 điểm bởi xguru 2021-10-14 | 5 bình luận | Chia sẻ qua WhatsApp
<p>- Kiểm thử phương thức POST với luồng API-Gateway → AWS Lambda → DynamoDB <br /> - Kiểm thử lần lượt với bộ nhớ 128/256/512/1024/10240MB<br /> - Cold Start <br /> → Nhìn chung Rust nhanh nhất. Chỉ ở mức 128Mb thì Python đứng đầu<br /> → Ngoài Java và .NET thì đa số đều nhanh <br /> → Java thậm chí không thể khởi động với 128Mb, nhưng GraalVM thì có thể <br /> - Warm Start <br /> → Golang và Rust là những bên chiến thắng<br /> → .Net cũng cho hiệu năng gần như tương đương Go/Rust, nhưng chỉ sau khi chạy lặp 1k lần (sau JIT)<br /> → GraalVM cũng cho hiệu năng ổn định tương tự .Net và chậm hơn Rust/Go một chút. Không hoạt động tốt với thiết lập tối thiểu<br /> → Java đứng ngay sau GraalVM. Java cũng giống .Net, chỉ đạt hiệu năng sau 1~3k lần lặp<br /> → Python cho hiệu năng ổn định và tốt, nhưng ở 128MB thì quá chậm <br /> → Ruby cho hiệu năng tương tự Python, nhưng sau khoảng 20 phút (15k lần lặp) thì duration tăng nhẹ <br /> → Node.js là runtime chậm nhất. Duration cũng dài nhất<br /> <br /> - Nếu xét cả Cold + Warm thì Golang và Rust là những bên chiến thắng. Luôn cho kết quả nhanh và ổn định <br /> <br /> - Các runtime được so sánh: 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 bình luận

 
ehlegeth 2021-10-14
<p>Tôi cũng chỉ xem lướt qua thôi,<br /> nhưng cục diện Rust, Golang ~~ Python, Ruby có vẻ không khác mấy so với kỳ vọng thông thường...<br /> <br /> Việc Java không có chi phí khởi động VM mà vẫn chậm ngay cả khi đã áp dụng JIT thì hơi bất ngờ một chút.<br /> Tôi cũng nghĩ Node.js sẽ nhanh sau khi JIT, nhưng kết quả lại cho thấy nó chậm.<br /> <br /> Có phải là do kiến trúc Lambda đang chạy hay stack ảo hóa gì đó khác biệt nên mới vậy không nhỉ..</p>
 
ehlegeth 2021-10-14
<p>Vì có quá nhiều yếu tố có thể ảnh hưởng đến bài kiểm tra hiệu năng nên có lẽ cũng không cần phải xem kết quả này quá nghiêm túc đâu nhỉ... haha</p>
 
eajrezz 2021-10-14
<p>Chẳng phải golang là người chiến thắng sao? haha</p>
 
ehlegeth 2021-10-14
<p>Vâng, có vẻ đúng là ra kết quả như vậy. <br /> Tôi chưa từng dùng golang trong môi trường đám mây, nhưng tôi có cảm giác nó thực sự rất hợp với môi trường đám mây.</p>
 
codufdl 2021-10-14
<p>Rust thật sự quá cuốn hút, tôi đã mua sách rồi mà vẫn chưa đọc, vậy mà chỉ vì tò mò thôi cũng thấy hứng thú bùng lên hẳn haha</p>