Як пов’язані HTTP-сервер Apache та Apache Tomcat? (Якщо взагалі)


34

В даний час Apache httpd працює на виробничому сервері Ubuntu VPS. Я пишу сценарії PHP.

Мені цікаво вивчити Java, і мені було цікаво, як би я пішов писати якусь Java-серверну роботу для моєї поточної настройки.

Як Apache Tomcat і Apache HTTP Server пов’язані один з одним?

Чи може Tomcat бути модулем httpd?

Або це просто два дуже різні проекти, якими керується одна і та ж організація (Apache Software Foundation)?


5
Or are they simply just two very different projects that happen to be steered by the same organisation?- Вони
Мчл

@Mchl, Вони теж дуже схожі.
Pacerier

Відповіді:


56

Взагалі, HTTP-сервер Apache - це просто звичайний старий веб-сервер, призначений для обслуговування статичних веб-сторінок. Є безліч модулів, які можна встановити для підвищення можливостей Apache, щоб вони могли обслуговувати динамічні веб-сторінки за допомогою різних технологій, таких як PHP, CGI або будь-що інше, але ядро ​​Apache - це просто звичайний старий сервер HTTP.

Tomcat, з іншого боку, спеціально розроблений з нуля, щоб слугувати двигуном Java Servlet . Основна його мета - реалізація API сервлетів Java та виконання сервлетів Java для створення динамічних веб-сайтів. Tomcat також може використовуватися як звичайний сервер HTTP, який обслуговує статичні сторінки, але це не є його основною метою. (Крім того, Tomcat нібито повільніше, ніж Apache httpd, коли справа доходить до подання статичних сторінок.)

Дві технології можна використовувати разом через роз'ємний модуль, який називається mod_jk . Це дозволить вам використовувати сервер Apache HTTP для обслуговування звичайних статичних веб-сторінок, а механізм Tomcat Servlet - для виконання сервлетів.


Чи можемо ми сказати, що коли ви завантажуєте Tomcat s / він завантажує веб-сервер на зразок Apache Httpd (але не зовсім це) І контейнер сервлетів, який є просто додатком Java?
Корай Тугай

@Charles, чому Tomcat повільніше, ніж Apache?
Pacerier

@Pacerier - він сказав "нібито", бо хоча люди широко вірять цьому, насправді це неправда .
Жуль

@KorayTugay не зовсім точно, ні. Томат - просто контейнер для сервлетів. Буває, постачається стандартний сервлет, який реалізує статичний веб-сервер. Не вдалося відокремити компонент веб-сервера без контейнера сервлетів.
Жуль
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.