Tôi chủ yếu là một nhà phát triển Java và tôi đến với bạn với một câu hỏi đặt ra sự phân chia giữa các nhà phát triển và hệ thống.
Cách đây nhiều năm, khi việc chạy Tomcat với tư cách là một máy chủ ứng dụng là một điều mới lạ, thì theo thông lệ, nó phải đối mặt với Apache. Theo tôi hiểu, điều này đã được thực hiện bởi vì:
- Java được coi là "chậm" và thật hữu ích khi Apache trực tiếp phục vụ nội dung tĩnh.
- Tomcat không thể nghe các cổng 80/443 trừ khi chạy bằng root, điều này rất nguy hiểm.
Java không còn được coi là chậm và tôi nghi ngờ việc thêm Apache vào hỗn hợp sẽ thực sự giúp tăng tốc mọi thứ.
Đối với vấn đề cổng, có lẽ có những cách đơn giản hơn để kết nối máy chủ ứng dụng với cổng 80/443 ngày nay.
Vì vậy, câu hỏi của tôi là - có thực sự có lợi ích gì khi đối mặt với Java Webapps với Apache không? Nếu vậy, Apache vẫn là con đường để đi? Tôi có nên nhìn vào Nginx? Thay vì Tomcat tôi đang sử dụng Glassfish, nếu điều đó quan trọng.