[Network]Web server, App 정리

HyunDong Lee·2022년 1월 5일
0

Network

목록 보기
9/10
post-thumbnail

웹서버

웹 서비스는 http 프로토콜을 이용하여 클라이언트와 서버의 통신을 의미한다. 클라이언트가 서버에 요청을 하면 서버가 응답을 하고, 웹 서버는 http request를 받고 html, css, js 등 정적인 정보를 반환한다.
웹서버

  • apache
  • nginx
  • GWS

Foward Proxy

프록시 서버는 클라이언트가 특정 웹서비스에 직접 요청하고 응답하지 않게 대신 요청하고 응답을 클라이언트에 전달(forward)을 해준다. 포워드 프록시에는 캐쉬 기능이 있기 때문에 자주 사용하는 컨텐츠에 대해서는 빠르게 응답을 할 수 있다.

Reverse Proxy

http 요청을 특정 네트워크 또는 서버로 전달하는 역할을 수행하는 서버이다. 특히, 외부로 오픈되지 않은 내부 서버에 접근할 수 있도록 요청과 응답을 전달하는 역할을 한다. 본안을 위하여 네트워크를 분리한 경우 사용한다.

location /some/path/{
    proxy_pass http://www.example.com/link/;
}

location ~ \.php {
    proxy_pass http://127.0.0.1:8000;
}

app 또는 Web Application

앱은 db를 질의하고 데이터를 가공하여 제공하는 역할을 담당한다. django, flask, php, jsp, asp 등을 예로 들 수 있다. 비즈니스 로직이 앱에서 구현.

...정리하면,

클라이언트에서 서버에 http요청을 하면 웹 서버가 정적 파일에 대한 요청인지 확인 후, 맞으면 그대로 응답하고 아니라면 WAS에 요청을 넘긴다. WAS는 해당 요청을 APP이 알 수 있는 형태로 넘긴 후 APP에서 데이터를 가공 및 처리하여 다시 클라이언트에 응답한다.

0개의 댓글