아파치 대안


15

현재 스택은 Apache + Tomcat + MySQL이며 ProxyPassAJP를 사용하여 Apache에서 Tomcat으로 요청을 발생시킵니다. 또한 동일한 사이트에서 Wordpress 용 PHP를 실행하므로 작업 .htaccess파일 이 필요 합니다. 에 대응하여 성가신 문제 (이 스택 오버플로 페이지를 참조하십시오) , 우리는 다른 스택이 좋다. 우리는 일반적으로 아파치를 좋아하지만이 문제는 막을 수없는 문제입니다. 문제를 해결할 수 없다면 Apache를 사용할 수 없습니다.

대안은 다음과 같습니다.

  • 톰캣 혼자
  • Glassfish (Tomcat에서 분기 된 Java 앱 서버)
  • 부두 (자바 서버)
  • 수지
  • LightTPD (경량 HTTP 서버)
  • Nginx (경량 HTTP 서버)

내가 보는 방식으로 솔루션은 두 가지 캠프로 나뉩니다. Glassfish와 같은 순수한 Java 캠프; 또는 현재 Apache + Tomcat과 같은 분할 캠프. 우리는 순수 Java 솔루션이라는 아이디어를 좋아합니다. 움직이는 부분이 적을수록 잘못되는 것이 적기 때문입니다. PHP, .htaccess파일 등을 지원하는 것이 있습니까?

이론적으로 우리는 다른 방법으로 분할을 수행 할 수 있습니다-그러한 기능을 필요로하는 비트에서만 Apache로 프록시하는 간단한 프론트 엔드를 갖지만 실제로는 요청의 80 %입니다.

사람들은 어떤 옵션을 제안합니까?


"성가신 쇼 스토퍼 문제"를 좀 더 자세히 설명해 주시겠습니까, 아니면 전혀 관련이 없습니까?
마크

자세한 내용은 StackOverflow 페이지 링크를 따르십시오. 클라이언트가 잘못된 응답을 전달하는 버그입니다. 때로는 HTML 파일 대신 JS 또는 CSS 파일을 가져 오거나 잘못된 페이지를 가져 오는 경우가 있습니다. 우리는 생각할 수있는 Apache와 Tomcat 내에서 거의 모든 것을 시도했습니다.
Marcus Downing

답변:


7

문제가 AJP와 관련이 있다고 생각합니다.

몇 주 전에 Tomcat 주요 개발자 중 한 명과 함께 과정을 밟았습니다 (그가 실행 중임). 그의 조언은 AJP 및 mod-JK 등을 피하고 정기적 인 mod-proxy HTTP를 고수하는 것이 었습니다.

원인:

  1. 가장 성숙하고 안정적인 Tomcat 커넥터입니다.
  2. AJP 구현은 지속적으로 개발되지 않았습니다. 두 프로젝트 모두 약간의 중지 / 시작이 발생했습니다.
  3. 이 상황에서 NBIO는 블로킹 -IO보다 실제 성능을 향상시키지 않습니다.

내 조언, 현재 설정으로 일반 mod-proxy HTTP를 사용해보십시오. 가장 적은 변경 사항이며 가장 널리 사용되고 안정적인 Tomcat 배포 아키텍처로 이동합니다.

/ 리치


나는 그것을 갈 수 있다고 생각합니다. 성능 차이에 어려움이 있습니까?
Marcus Downing

일반 모드 프록시를 사용하고 Tomcat에 올바른 호스트 이름을 가져 오는 방법은 무엇입니까? 나는 그들이 현재 로컬 호스트로 모두 받고 있다고 확신합니다.
Marcus Downing 2016 년

2
ProxyPreserveHost On은 아마도 당신이 찾고있는 것입니다. httpd.apache.org/docs/2.2/mod/mod_proxy.html#proxypreservehost
Stephen Veiss

5

현재 선호하는 스택은 nginx를 Apache 대신 사용하는 것입니다. 필요한 경우, php-fpm은 PHP의 필요성을 충족시킵니다. 이러한 설정은 Rails, Magento 및 SugarCRM과 같은 앱을 배포하는 데 효과적이었습니다.


4

Glassfish는 Grizzly (NIO 기반)를 사용하므로 Tomcat보다 확장 성이 뛰어납니다. Java 요구 사항으로 인해 Tomcat, Jetty 또는 Glassfish의 변형 이외의 많은 옵션이 없습니다. PHP는 Quercus를 사용하여 실행할 수 있지만 Nginx를 사용하여 배포하는 것이 좋습니다.


2

Java에는 PHP 구현이 있습니다. 알고 있지만 (사용하지 않은) 것은 this 입니다. GlassFish (WordPress 포함) 에 설치하는 방법대한 블로그 게시물이 있지만 Tomcat의 설치가 동일 하다고 생각합니다. .htaccess와 관련하여 정확히 거기에 무엇을 쓰지 않았지만 URL 다시 쓰기의 경우 동일한 의미로 동일한 작업을 수행하는 UrlRewriteFilter 가 있습니다.


그들은 몇 가지 간단한의의 RewriteRules를 포함하므로 .htaccess 파일은 주로 워드 프레스에 의해 생성 된 것들이다
마커스 다우닝

PHP는 그것들을 지원하지 않을 것이라고 생각하지만, 그것들을 읽고 정의를 필터에 전달하는 프로세스를 갖는 것은 어렵지 않아야합니다.
David Rabinowitz

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.