- Clustering. Apache HTTP server'i ön tarfata kullanmak Apache HTTP server'ı birden fazla Apache Tomcat uygulama sunucusunun önünde bir ön kapı haline getirerek Tomcat'lerin biri çöktüğünde Apache HTTP server'in bu tomcati yoksayarak diğer Tomcat'e geçmesini sağlar ve bu sayede sistem admini gece rahatça uyuyabilir. Bu senaryo donanımsal yük dengeliyi kullanılmışsa veya Tomcat'in clustering kabileyetleri kullanılmışsa göz ardı edilebilir.
- Clustering/Security. Apache'i ayrıca
Tomcat'ler için farklı URL isim uzayları için bir ön kapı olarak
kullanabiliriz.(/app1/, /app2/, /app3/, veya virtual host'lar). Tomcat'ler
güvenli bir alanda olabilirler ve güvenlik açısından sadece Apache HTTP
server ile ilgileniriz. Yani özet olarak Apache akıllı bir proxy sunucu
haline gelmiş olur.
- Güvenlik. Bu konu her iki yöne de
değişebilir. Java güvenlik yöneticisine sahipken, Apache daha büyük bir
akıl hocalığı ve daha fazla hüner içeriyor. Buna daha ayrıntılı bir
şekilde girmeyeceğim, ancak Google'ın arkadaşınız olmasını sağlayın.
Senaryonuza bağlı olarak, biri diğerinizden daha iyi olabilir. Ancak
unutmayın ki, Tomcat ile Apache'yi çalıştırırsanız - savunmanız gereken
iki sisteminiz var, artık bir sisteminiz yok.
- Eklentiler. CGI, perl'e ekleme
yaparken PHP, Apache için çok doğaldır. Apache HTTP'de, istediğiniz zaman
bağlanabilen yüzlerce modül vardır. Apache Tomcat de bu yeteneğe sahip olabilir,
ancak bunun için kod henüz yazılmamıştır.
- Dekoratörler! Apache Tomcat'in önündeki
Apache HTTP ile, Apache Tomcat'in desteklemediği veya hemen kod desteği
bulunmayan herhangi bir sayıda dekoratör gerçekleştirebilirsiniz. Örneğin,
Apache Tomcat için modheaders, modrewrite ve mod_alias yazılabilir,
ancak neden Apache HTTP bunu çok iyi yaptığında tekerleği yeniden icat
edelim?
- Hız. Apache HTTP, statik
içerik sunumunda Apache Tomcat'tan daha hızlıdır. Ancak yüksek trafik
alanınız yoksa, bu işe yaramaz. Fakat bazı senaryolarda, Apache Tomcat
Apache httpd'den daha hızlı olabilir. Öyleyse sitenizi benchmarklayın.
Apache Tomcat, uygun konnektörü kullanırken (sendFile etkinleştirilmiş
APR) httpd hızlarında performans gösterebilir. Hız, Apache httpd ve Tomcat
arasında seçim yaparken bir faktör olarak düşünülmemelidir.
- Soket
kullanımı / sistem kararlılığı. Apache HTTP, hata koşullarına göre Apache
Tomcat'ten daha iyi soket işleme özelliğine sahiptir. Başlıca nedeni,
Apache Tomcat'in çapraz platform olması gereken JVM aracılığıyla tüm soket
işlemlerini gerçekleştirmesi gerektiğidir. Soket optimizasyonu platforma
özgü bir sıkıntı sorunudur. Çoğu zaman Java kodu iyi, ancak aynı zamanda
düşen bağlantılar, geçersiz paketler, geçersiz IP'lerden gelen geçersiz
istekler ile bombardıman edildiğinde, Apache HTTP bu hata koşullarını JVM
tabanlı programdan düşürmede daha iyi bir iş çıkarıyor. (YMMV)