- 서버의 사전적 의미 : 서버는 사용자(클라이언트)의 요청에 의하여 서비스를 하는데 이와 같이 구성된 시스템을 클라이언트-서버 시스템이라고 하며, 이는 하나 이상의 응용 프로그램을 상호 협력적인 환경에서 운용하는 분산처리 형태를 의미한다. 즉, 서비스를 요청하는 클라이언트와 클라이언트의 요청을 처리하는 서버와의 협동작업을 통해서 사용자가 원하는 결과를 얻는 처리방식이 클라이언트-서버 시스템이다.
- 클라이언트 → 서버 : 요청
- 서버 → 클라이언트 : 응답
- 서버의 한줄 요약
서버는 네트워크를 통해 클라이언트에 정보나 서비스를 제공하는 컴퓨터 또는 프로그램
- 내가 만약에 gloriouscoding.com 을 방문한다고 가정하면 방문자가 서버에 요청을 하고 glorioucoding 서버 측에서는 방문자에게 홈페이지 자료를 띄우는 작업을 한다.
- 어플리케이션도 마찬가지다.
- 서버라고 해서 요청에 대한 응답만 하는 것은 아니다.
- 다른 서버에 요청을 보낼 수도 있다.
서버는 클라이언트의 요청에 대해 응답을 한다.
- 응답으로 항상 Yes를 해야 하는 것은 아니고, No를 할 수도 있다.
- 여러분이 어떤 사이트로부터 차단당했다면 그 사이트의 서버는 여러분의 요청에 매번 No를 응답
- Node는 JS Program이 Server로서 기능하기 위한 도구를 제공하므로 Server 역할을 수행할 수 있다.
Node JS = Javascript 런타임