여러가지 용어 정리

이예음·2023년 3월 1일
0
post-thumbnail

Web server

클라이언트(사용자)가 어떤 요청을 하면, http 요청을 받아들여 정적 콘텐츠를 사용자에게 전달해 주는 역할을 한다.

정적 콘텐츠란 단순 HTML 문서, CSS, 이미지, 파일 등 즉시 응답 가능한 컨텐츠들을 말한다.

이때, 웹 서버가 정적 컨텐츠가 아닌 동적 컨텐츠를 요청받으면 WAS에게 해당 요청을 넘겨주고, WAS에서 처리한 결과를 클라이언트에게 전달하는 역할도 해준다.

웹서버의 종류로는 WtoB, Apache, NginX 등이 있다.

WAS(Web Application Server)

DB 조회 혹은 다양한 로직 처리를 요구하는 동적 콘텐츠를 제공하기 위해 만들어진 Application server다.

WAS 또한 웹 서버와 동일하게 HTTP 기반으로 동작하며, 웹 서버가 할 수 있는 기능 대부분이 WAS에서도 처리가 가능하다. 또한 비즈니스 로직(서버사이드 코드)을 처리할 수 있어 사용자에게 동적인 콘텐츠를 전달할 수 있다. 주로 데이터베이스 서버와 같이 수행된다.

DBMS(Database Management System)

데이터베이스를 운영하고 관리하는 소프트웨어
다양한 데이터가 저장되어 있는 데이터베이스는 여러 명의 사용자나 응용 프로그램과 공유하고 동시에 접근이 가능해야한다.
예시

여러 명의 예금 계좌 정보를 모아 놓은 것이 데이터베이스인데, 은행이 가지고 있는 예금 계좌 데이터베이스에는 여러 명이 동시에 접근할 수 있다. 예금 계좌 주인, 은행 직원, 인터넷 뱅킹, ATM 기기 등에서 모두 접근 가능하다. 이게 가능한 이유가 바로 DBMS가 있기 때문이다.

DBMS 종류

문서를 작성하기 위해서 한글이나 워드 같은 소프트웨어를 설치하는 것처럼, 데이터베이스를 사용하기 위해서도 DBMS란 소프트웨어를 설치해야한다. 그 종류 또한 다양하다.

지금 내가 다니고 있는 회사는 Oracle을 쓴다.

DBMS 유형

현재 사용되는 DBMS 중에는 관계형 DBMS가 가장 많은 부분을 차지한다.
계층형(Hierarchical)

단점으로 처음 구성을 완료한 후에 변경하기가 상당히 까다로우며, 다른 구성원을 찾아가는 것이 비효율적이다.
그래서 지금은 사용하지 않는 형태
망형(Network)

계층형의 문제점을 개선하기 위해 나옴. 하위에 있는 구성원끼리도 연결된 유연한 구조
하지만 프로그래머가 모든 구조를 이해해야만 프로그램 작성이 가능하다는 단점이 존재
역시나 지금 거의 사용하지 않는 형태
관계형(Relational)

RDBMS라고 부른다. 대부분의 DBMS가 RDBMS 형태로 사용됨
테이블이라는 최소 단위로 구성되며, 테이블은 하나 이상의 열과 행으로 이루어져 있다.
객체지향형(Object-Oriented)
객체관계형(Object-Relational)

SQL(Structured Query Language)

관계형 데이터베이스에서 사용되는 언어
SQL은 특정 회사에서 만드는 것이 아니라 국제표준화기구에서 SQL에 대한 표준을 정해서 발표한다. 이를 표준 SQL이라고 한다.
SQL을 사용하는 DBMS를 만드는 회사가 여러 곳인데, 회사에서는 되도록 표준 SQL을 준수하되, 각 제품의 특성을 반영한 SQL을 사용한다.

JEUS

티맥스에서 개발한 WAS
주로 동적 데이터(JSP, DB연결 등)를 제공하기 위해 사용.
내가 다니는 회사는 정적 데이터(HTML, 파일 등)은 웹서버인 WtoB로 한다.

SVN(SubVersion)

형상관리/소스 관리 툴
여러명이서 작업하는 프로젝트의 경우 버전관리나 각자 만든 소스의 통합과 같은 문제를 해결하기 위해 저장소를 만들어 그곳에 소스를 저장해 소스 중복이나 여러 문제를 해결하기 위한 소프트웨어다.
하나의 서버에서 소스를 쉽고 유용하게 관리할 수 있게 도와주는 툴이다.
git과 같은 역할

JDK(Java Development Kit)

JavaSE와 같은 규격을 토대로 만들어진 소프트웨어 패키지
Java를 이용한 개발 및 실행에 있어 필요한 툴들을 제공

JVM(Java Virtual Machine)

JDK 툴 중 하나
Java로 만들어진 Application이 실제로 동작하는 가상 환경
이 JVM 위에서 Application이 실행되기 때문에 하나의 Java 프로젝트를 개발해도 여러 환경에서 원활하게 실행시킬 수 있다.

JRE(Java Runtime Environment)

JDK 툴 중 하나
Java로 만들어진 Application이 동작하는데 필요한 JVM, 라이브러리 등 다양한 파일들을 포함
즉, Java를 실행하려면 JRE가 필요하다.

출처

혼공

profile
응애

0개의 댓글