Tôi chỉ so sánh hiệu suất của các diễn viên scala với chủ đề java.Chủ đề Java nặng như thế nào so với các diễn viên Scala/Akka?
Tôi ngạc nhiên khi thấy sự khác biệt, tôi quan sát thấy rằng với hệ thống của mình, tôi có thể sinh ra tối đa ~ 2000 luồng (chỉ ở một thời điểm), nhưng với cùng một hệ thống, tôi có thể đẻ ~ 500.000 diễn viên scala.
Cả hai chương trình đều sử dụng khoảng 81MB bộ nhớ Heap của JVM.
Bạn có thể giải thích Chủ đề java có trọng lượng nặng hơn nhiều so với các diễn viên scala/akka không? Yếu tố quan trọng nào khiến cho diễn viên scala có trọng lượng nhẹ như vậy?
Nếu tôi muốn đạt được khả năng mở rộng tốt nhất, tôi có nên sử dụng máy chủ web dựa trên diễn viên thay vì máy chủ web/ứng dụng truyền thống dựa trên java như JBoss hoặc Tomcat không?
Cảm ơn.
Đối với câu hỏi về máy chủ web của bạn, nó phụ thuộc vào những gì bạn cần. Có những giải pháp thực sự có khả năng mở rộng để đạt được thông lượng cao, dựa trên NIO như Netty, và họ không sử dụng các diễn viên. Bạn có cần một máy chủ web đầy đủ không? dịch vụ giao thông cao? Tích hợp cao với các khuôn khổ đã biết (jee, spring, ...)? Các diễn viên nói chung, và Akka 2.1 nói riêng với sự hỗ trợ cho việc phân cụm, hoặc chơi! dựa trên akka, là giải pháp "có thể mở rộng", nhưng không có dấu đầu dòng bạc cho tất cả các tình huống. Nó thực sự phụ thuộc vào nhu cầu của bạn. –