본문 바로가기

Web/기초

(16)
[WEB기초] 소켓, 서킷, 패킷, TCP/IP 통신 1. 소켓(Socket) 소프트웨어로 작성된 추상적인 개념의 통신 접속점이라고 할수 있으며, 네트워크 응용 프로그램은 소켓을 통하여 통신망으로 데이터를 송수신하게 된다. 응용 프로그램에서 TCP/IP를 이용하는 창구 역할을 하며 응용 프로그램과 소켓 사이의 인터페이스 역할을 하고 있다. 두 프로그램이 네트워크를 통해 서로 통신을 수행할 수 있도록 양쪽에 생성되는 링크의 단자이다. 두 소켓이 연결되면 서로 다른 프로세스끼리 데이터를 전달할 수 있다. 소켓은 통신을 위한 일종의 통로리며, 소켓은 상대방에게 데이터를 보내거나 받는 역할을 한다. 연결을 수동적으로 기다리느냐, 능동적으로 연결하느냐로 서버, 클라이언트도 구분할 수 있다. 2. 서킷, 패킷 인터넷이 생기기 전까지 통신을 위해서는 양 쪽에서 연결이 ..
[WEB기초] DNS DNS : Domain Name System의 약자로 호스트의 도메인 이름을 호스트의 네트워크 주소로 바꾸거나 그 반대의 변환을 수행할 수 있도록 하기 위해 개발되었다. 네트워크에서 도메인이나 호스트 이름을 숫자로 된 IP주소로 해석해주는 TCP/IP 네트워크 서비스이다.
[WEB기초] CGI(공용 게이트웨이 인터페이스) 공용 게이트웨이 인터페이스CGI(Common Gateway Interface)는 웹 서버 상에서 사용자 프로그램을 동작시키기 위한 조합이다. 존재하는 많은 웹 서버 프로그램은 CGI의 기능을 이용할 수 있다. 웹서버 프로그램의 기능의 주체는 미리 준비된 정보를 이용자(클라이언트)의 요구에 응답해 보내는 것이다. 그 때문에 서버 프로그램 그룹에서는 정보를 그 장소에서 동적으로 생성하고 클라이언트에 송신하려하는 조합을 작성하는 것이 불가능했다. 서버 프로그램에서 다른 프로그램을 불러내고, 그 처리 결과를 클라이언트에 송신하는 방법이 고안되었다. 이를 실현하기 위한 서버 프로그램과 외부 프로그램과의 연계법을 정한것이 CGI이다. 웹브라우저 -> 웹서버 -> CGI 프로그램 -> 웹서버 -> 웹브라우저 참조 k..
[WEB기초] J2SE, J2EE의 차이 J2SE (Standard Edition) : 일반 자바 프로그램 개발을 위한 용도로 이용되는 개발도구이며 각종 자료구조, 기본 유틸리티, 스윙이나 AWT와 같은 GUI도구등의 기본기능을 포함하고 있다. J2EE (Enterprise Edition) : 엔터프라이즈 환경을 위한 도구로 EJB, JSP, Servlet, JNDI같은 기능을 지원하며 웹 어플리케이션 서버를 이용하는 프로그램 개발시 많이사용한다.
[WEB기초] 서블릿과 JSP의 차이 Servlet와 JSP의 개념 기능의 차이는 없고 역할의 차이만 있다.(하는 일은 동일) Servlet 이란 웹 기반의 요청에 대한 동적인 처리가 가능한 Server Side에서 돌아가는 Java Program Java 코드 안에 HTML코드(하나의 클래스) gmlwjd9405.github.io/2018/10/28/servlet.html [Web] Servlet이란 - Heee's Development Blog Step by step goes a long way. gmlwjd9405.github.io 자바 코드안에 HTML태그가 삽입되어있고, 확장자는 .java HTML태그로 문자열(“”) 스크림으로 처리해야한다. JSP 란 Java 언어를 기반으로 하는 Server Side 스크립트 언어 HTML 코드..
[WEB기초] 톰켓(Tomcat)과 일반 웹서버(Web Server)의 차이 apache(Web Server) : 소프트웨어 단체 이름, 아파치 서버는 http웹서버를 지칭하는 말. http웹서버 : http 요청을 처리할 수 있는 웹서버이고, 아파치 http서버는 http요청을 처리하는 웹서버. 톰캣(Web Application Server) : 웹 서버 + 웹 컨테이너. 다양한 기능을 컨테이너에 구현하여 다양한 역할을 수행할 수 있는 서버. 웹 컨테이너 : 클라이언트의 요청이 있을 때 내부의 프로그램을 통해 결과를 만들어내고, 이것을 다시 클라이언트에 전달해주는 역할을 하는 것. 일반 웹서버와 톰캣의 차이는 웹 컨테이너 기능을 수행할 수 있냐의 차이. 1. 톰켓(Apache Tomcat, WAS - Web Application Server) Java Servlet, JavaS..
[WEB기초] 재스퍼(Jasper), 카탈리나(Catalina) 톰켓의 컴포넌트 이름 : 톰켓(Tomcat), 카탈리나(Catalina), 재스퍼(Jasper) 카탈리나(Catalina) : 서블릿 컨테이너. 자바 서블릿을 호스팅하는 환경 재스퍼(Jasper) : 톰캣의 JAP 컴포넌트. 실제로 JSP 페이지의 요청을 처리하는 서블릿. 톰캣(Tomcat) : 카탈리나, 재스퍼와 서버를 시자하고 멈추는 배치 파일들, 예제 애플리케이션 등으로 구성됨. 1. 톰캣 카탈리나 톰캣은 여러개의 컴포넌트로 구성된다. 톰캣의 코어 컴포넌트는 카탈리나이다. 카탈리나는 톰캣의 서블릿 스펙의 실질적인 구동을 제공한다. 톰캣 서버를 가동시킬 경우, 카탈리나를 구동시킨 것이라 생각하면 된다. 카탈리나 기본 동작은 톰캣의 6개 config 파일을 편집하여 구현/제어할 수 있다. 1) cata..
[WEB기초] HTTP, AJAX, Web Socket HTTP는 통신 제약이 있는 약속입니다. AJAX로 HTTP의 통신 제약으로부터 조금 벗어날 수 있었습니다. Websocket은 HTTP의 통신 제약을 해결한 새로운 약속입니다. 1. HTTP(Hyper Text Transfer Protocol) HTTP의 앞 두글자 Hyper Text는 HTTP가 등장하기 이전 세대에서 통신한다 함은, 터미널 창에서 딱딱한 텍스트를 주고 받는 것이였다. HTTP의 뒤 두 글자 Transfer Protocol. HTTP의 대전제는 “URL 및 부가정보를 통해 사용자가 원하는 페이지를 서버에 요청한다, 그리고 서버는 해당 요청에 응답한다” 이다. -> 사용자가 URL을 요청할 때만 서버에서 해당 페이지를 꺼내준다. 즉, 브라우저가 웹서버에 무엇인가를 요청하려면, 페이지를 ..