Để kiểm tra nhanh & bẩn (nghĩa là không tối ưu hóa gì!) Tôi đã kích hoạt trang web mặc định Ubuntu apache2 đơn giản (chỉ nói "Nó hoạt động!") Với cả http và https (chứng chỉ tự ký) trên máy ảo Ubuntu 9.04 cục bộ và chạy apache điểm chuẩn " ab
" với 10.000 yêu cầu (không đồng thời). Máy khách và máy chủ nằm trên cùng một máy / VM:
Kết quả cho http (" ab -n 10000 http://ubuntu904/index.html
")
- Thời gian thực hiện các bài kiểm tra: 2,664 giây
- Yêu cầu mỗi giây: 3753,69 (# / giây)
- Thời gian cho mỗi yêu cầu: 0.266ms
Kết quả cho https (" ab -n 10000 https://ubuntu904/index.html
"):
- Thời gian thực hiện các bài kiểm tra: 107.673 giây
- Yêu cầu mỗi giây: 92,87 (# / giây)
- Thời gian cho mỗi yêu cầu: 10.767ms
Nếu bạn xem xét kỹ hơn (ví dụ với tcpdump hoặc wireshark) tại giao tiếp tcp / ip của một yêu cầu, bạn sẽ thấy trường hợp http yêu cầu 10 gói giữa máy khách và máy chủ trong khi https yêu cầu 16: Độ trễ cao hơn nhiều so với https. (Thông tin thêm về tầm quan trọng của độ trễ ở đây )
Việc thêm tính năng giữ nguyên ( ab
tùy chọn -k
) vào kiểm tra sẽ cải thiện tình hình vì hiện tại tất cả các yêu cầu đều có chung kết nối, nghĩa là chi phí SSL thấp hơn - nhưng https vẫn có thể đo được chậm hơn:
Kết quả cho http với giữ nguyên (" ab -k -n 10000 http://ubuntu904/index.html
")
- Thời gian thực hiện các bài kiểm tra: 1.200 giây
- Yêu cầu mỗi giây: 8334,86 (# / giây)
- Thời gian cho mỗi yêu cầu: 0.120ms
Kết quả cho https với tính năng giữ nguyên (" ab -k -n 10000 https://ubuntu904/index.html
"):
- Thời gian thực hiện các bài kiểm tra: 2.711 giây
- Yêu cầu mỗi giây: 3688,12 (# / giây)
- Thời gian cho mỗi yêu cầu: 0,271ms
Kết luận :
- Trong thử nghiệm đơn giản này, https chậm hơn nhiều so với http.
- Đó là một ý tưởng tốt để kích hoạt hỗ trợ https và điểm chuẩn trang web của bạn để xem bạn có muốn trả tiền cho chi phí https không.
- Sử dụng wireshark để có ấn tượng về chi phí SSL.