Ch 1. 서버
1) 서버와 클라이언트
서버: 뒤에서 작동하는 큰 컴퓨터
클라이언트: 서버한테 요청
- 웹서버는 html 웹 페이지를 보여달라고 요청하면 html 페이지를 보여주는데, 이 기록을 남기고, 이 때는 정적 콘텐츠를 보여준다.
- 동영상과 같은 움직이는 것들은 웹 서버가 처리를 못하기 때문에 애플리케이션 서버한테 동영상을 보내달라고 요청하면 웹 서버가 전달을 받은 다음에 클라이언트한테 전달한다.
- DB 서버는 아무한테나 동적 컨텐츠를 보내주는 것이 아니라 요청한 동영상을 확인해달라고 DB 서버에 요청하면 그 사람이 원하는 도영상을 애플리케이션 서버가 받고 그걸 웹 서버가 받아서 클라이언트한테 전달하는 시스템이다.
- 리버스 프록시 서버는 웹 서버와 애플리케이션 서버를 이어주는 역할인데, 이게 왜 있냐면! 애플리케이션 서버가 많을 때, 클라이언트가 너무 많은 경우 하나로 처리를 못하기 때문에 나눠서 진행한 다음에 웹 서버에 연결해주기 위해서이다.(중간에 분산해서 효율적인 연결이 되도록!)
- 포워드 프록시(캐시) 서버는 똑같은 것을 요청할 때는 DB까지 가서 꺼내오는 것이 아니라 캐시 서버에 이미 저장되어 있는 것을 웹 서버에 빠르게 전달하는 역할이다.
2) 서버 하드웨어
서버 하드웨어 폼펙터
- 랙마운트형 서버
: Rack 서버라고 부르는 Rack에 밀어 넣는 형태의 서버를 말한다.
: 이 서버는 가장 작은 서버 1U, 2U, 4U, 6U, 8U 이런 식으로 있는데 숫자가 커질수록 성능도 좋아지고, 저장장치도 늘어난다.
- 블레이드형 서버
: Rack 서버를 더 얇게 만들고 케이스가 없음
: 이 서버는 특수한 경우의 서버이고 대부분 Rack 서버를 사용한다.
- 타워형 서버
: 일반 PC와 유사한 형태의 서버로 워크스테이션이라고도 부른다.
서버 하드웨어 유형
- Main Frame
통계, 금융 같은 분야에 사용되는 대형 서버
- UNIX
Main Frame의 경량화 버전
은행이나 대기업에서 사용
- x86
중소기업부터 대기업까지 가장 많이 사용하는 서버 유형
서버 하드웨어 제조사
- HPE, Dell, Inspur, Lenovo, IBM, Asus 등
3) 서버 소프트웨어
오픈소스와 상용 소프트웨어
- 오픈소스 SW
: 무료, 소스코드가 공개되어 누구나 다운 받아서 사용이 가능하다
: mongoDB, MySQL, git, python과 같은 것이 포함된다.
- 상용 SW
: 유료
: 포토샵, MS office, ORACLE 과 같은 것들이 포함된다.
OS의 종류
- z/OS
- UNX
- Linux
- 상용 Linux
- Microsoft Windows Server
우리나라 점유율만 보면 windows가 많은 것 같지만, 전 세계적으롭 보면 Linux가 훨씬 많다.
웹 서버에는 대표적으로 3가지가 있는데
APACHE, NGINX, IIS이다.
리눅스 기반에서는 아파치, 윈도우 기반에서는 IIS를 많이 사용한다.
FileZilla는 공유할 수 있는 서버(특정 서버에 있는 파일을 가져와서 쓰는 것)
Exchange는 메일 서버다.(이메일을 주고 받을 수 있게 해주는 SW)
Ch 2. 네트워크
네트워크 = Net + Work = 그물을 짜는 행위 = 촘촘히 연결
- Main Frame에서 A라는 일을 처리한다고 하면 그 일만 처리하게 되고, A 업무가 끝나기 전까지는 다른 업무를 하지 못한다. 따라서 생긴 것이 단말기
- 단말기를 A, B, C 만들어서 각자 업무를 할 수 있게 연결해주는 것이 전화선, 네트워크
- ARPANET 이게 네트워크의 시작이다. 패킷 교환 방식을 처음으로 사용
1) 네트워크
회선 교환 방식
: 데이터를 교환하기 위해 1:1로 연결된 통로를 만들고 쓰는 것
: 옛날 집전화를 생각하면 안방에 있는 거랑 거실에 있는 전화기가 연결되서 통화를 끊지 않는 이상 다른 전화를 하지 못했던 것을 생각하면 된다.
: 옛날 방식의 PC 통신(하이텔, 누루넷 등)
패킷 교환 방식
: 통신 상태에 따라서 중간에 끊길 수 있다. 이를 개선해서 나온 방식
: 데이터를 패킷이라는 단위로 잘게 쪼개고 각각 헤더를 달아서 전달
: 택배에 택배 송장을 붙이는 것을 생각하면 쉬움
: 패킷이 손상된 경우에 저 전체를 다시 보내는 것이 아니라 해당 패킷만 다시 보내면 된다.
ex) "야 잘 있어?"를 보내려고 했는데 "야"만 보내고 끊겼다면, "잘 있어?"의 패킷만 보내면 된다.
(유실된 패킷만 보내줌)
2) 프로토콜
: 패킷을 전송하기 위한 정해진 규칙, 약속
ex) https에서 s는 secret를 의미하는 것으로 보안이 강화된 암호화된 통신 기법
: 네트워크는 송신자와 수신자가 존재하는데 그 사이에 일어나는 규칙을 프로토콜, 그걸 연결하는 다리를 계층 Layer
: 현업에서는 L1, L2, L3, L4, L7 이렇게 5가지로 말한다. (5개 계층)
L2는 L1, L2를 모두 역할 할 수 있고, L7은 L1, L2, L3 역할 모두 가능하다
즉, 하위계층의 역할을 모두 대체할 수 있다.
3) 네트워크 기기, 형태
- LAN
근거리 통신망(같은 네트워크에 연결)
- WAN
원거리 통신망, LAN들이 연결된 것
- Internet
수많은 WAN들이 연결된 것
- World Wide Web
인터넷에 연결된 컴퓨터를 통해 사람들이 정보를 공유할 수 있는 공간
이것 때문에 우리가 www. 라고 하는 것이다.
- VPN
인터넷 상에서 가상의 전용선을 만들어 통신할 수 있게 하는 기술
- DMZ
말 그대로, 비무장지대(외부 네트워크와 내부 네트워크의 중간 지점)
함부러 접근 못하게 해준다.
Ch 3. 스토리지
1) 스토리지 개념 및 종류
- RAID
RAID 0: 데이터를 여러 디스크에 분산 저장하여 하나의 디스크처럼 사용, 성능이 좋지만 장애 시 데이터는 모두 손실RAID 1: 미러링(같은 디스크를 두 개로 운영)RAID 5: 디스크에 패러티 정보를 저장해 장애 시 패러티를 토대로 복구 가능(일정 수준의 성능과 안정성 확보)RAID 6: RAID 5 방식에 패러티 하나 더 추가 하여 안정성 향상(성능은 약간 떨어짐)RAID 1+0: RAID 0의 높은 성능과 RAID 1의 뛰어난 안정성을 합친 형태-> 여기서 말하는 패러티는 데이터가 아닌 데이터에 대한 정보
- JBOD