Apache
Apahce는 원래 회사 이름이지만 Apache HTTP server(Web Server)를 칭하는 말로 주로 쓰인다. 사용자가 웹 서버에 HTML 파일을 요청하면, 요청을 받은 웹 서버는 클라이언트 컴퓨터에 HTML 파일을 제공하는 방식이다. 이때 사용되는 프로토콜이 HTTP 이다. 정적인 데이터를 처리하는 서버이다.
HTTP 통신
HTTP(Hyper Text Transfer Protocol)란 말 그대로 Hyper Text를 전송하기 위한 프로토콜이다. Hyper Text는 웹 문서를 구성하는 언어인 HTML을 의미한다.
HTTP 통신은 평상시에는 연결이 되어 있지 않다. 따라서 클라이언트는 서버에 연결 요청을 하고 응답을 받고 연결이 종료되는 과정이 존재한다. 서버는 클라이언트가 현재 접속해 있는지 알 수 없다. 따라서 필요한 경우에만 서버로 접근하는 콘텐츠 위주의 데이터를 사용할 때 용이하다. 일반적으로 모바일 어플리케이션은 HTTP 통신을 주로 사용하며 비용 및 유지보수 방면에서 좋다. 또한 요청을 보내고 응답을 받을 때 정보를 패킷(packet)이라는 작은 조각으로 나누어 보내게 된다.
Socket 통신
Server와 Client가 특정 port를 통해 실시간으로 양방향 통신을 하는 방식이다. HTTP 통신의 경우 client만 server로 요청을 보낼 수 있지만 socket 통신의 경우 server 또한 client로 요청을 보낼 수 있다. 주로 streaming이나 온라인 게임에 사용된다.
Apache Tomcat
HTTP server와 다르게 동적인 데이터를 처리하는 서버로 생각하면 쉽다. 이러한 서버를 Web Application Server라고 하고, WAS라 부른다.
'안드로이드' 카테고리의 다른 글
[안드로이드] 예제:MVVM+AAC를 이용한 RecyclerView 1 (1) | 2020.08.12 |
---|---|
[안드로이드] asynctask의 이해 (0) | 2020.03.31 |
웹서버 공유기 설정 (0) | 2020.03.25 |
Android + PHP, FCM을 이용한 Push Notification 발생 (0) | 2020.03.24 |
Nested Dynamic RecyclerView (feat. SQLite) (0) | 2020.03.11 |