일반적으로 WAS서버만으로는 성능이 부족하므로,
웹+WAS 서버 결합해서 서비스를 하게 되는데,
에전에는 Apache+ Tomcat의 결합이 대세였다고 하면
요즘에는 nginx + SpringBoot(tomcat 포함)이 대세이다.
<nginx의 특징 및 주요 기능>
1. apache대비 빠르고 가볍다.
- apache가 클라이언트별로 thread를 할당하는 구조인데 반해,
nginx는 메시지방식(혹은 event-driven) 방식이다. 당연히 비동기식 메시징 방식이 훨씬 효율적이다.
자세한 비교는 REF
2. reverse PROXY가 강력하다.
- apace에서도 PROXY기능 외에 Reverse Proxy가 지원되었으나,
nginx의 reverse Proxy는 ID/비번도 부여할 수 있고.. 더 안전/강력해 보인다.
참고: PROXY vs Reverse_PROXY REF
- proxy는 웹브라우저 쪽: 웹브라우저 여러개가 하나의 proxy를 이용해 cache된 데이터를 받도록 해서
- reverse Proxy는 웹서버 쪽: 마치 L4처럼 하나의 ReverseProxy서버가 요청을 받아 여러 웹서버로 분리할 수 있다.
<nginx + springBoot 사용방식>
1. 기본설정 /nginx/conf/nginx.conf 를 편집하고 reload하면 됩니다.
http { ... ...
server {
listen 80;
... ...
location / {
proxy_pass http://localhost:8080;
}
... }
2. nginx + 2개 springBoot (각각 다른포트)를 이용한 무중단 배포 방식: REF gitREF
참고:
nginx를 centOs7에 설치하는 법 - REF
nginx를 이용한 reverseProxy 설정 - REF