
1. 서버 과부하 서버가 리소스를 소진하여 들어오는 요청을 처리하지 못할 때 발생 트래픽이 많이 발생하고 이를 적절히 해결하지 못하면 서버과부하가 걸린다. ex ) 사용자의 웹요청을 처리하지 못해 응답없음이 뜬다. 2. 서버 과부하의 원인 자원의 한계점 도달했을 때 서버의 CPU 사용량이 80-90%에 도달할 때 메모리가 부족해 계속해서 스와핑이 발생할 떄 ▶ 모니터링을 통한 자원의 적절한 할당으로 해결가능하다. 3. 서버 과부하 해결방법 1) 모니터링을 통한 자원 할당 ① AWS 오토스케일링 서비스 이용불가능 상태 발생 이전 cloud watch가 계속해서 모니터링하여 서버 대수를 늘려주는 방법 애플리케이션을 자동으로 모니터링하고 자원의 용량을 자동으로 조정 동작원리 - EC2 인스턴스 클러스터가 있고..

1. 네트워크 장치 1) 레이어별 네트워크 장치 네트워크 장치는 레이어별로 나뉜다. 상위계층에서 처리하는 기기는 하위계층처리 가능 하지만 반대는 불가능 ① 애플리케이션 계층 L7 스위치 ( 로드밸런서) 서버의 부하를 분산하는 기기 서버이중화, 보안에 강점 트래픽을 분산 : IP , Port , url , 헤더 , 쿠키 기반 헬스체크를 통해 장애가 발생한 서버를 확인하고 해당 서버로 트래픽을 보내지 못하게 하는 역할 헬스 체크 ● 전송 주기와 재전송 횟수 등을 설정한 이후 반복적으로 서버에 요청을 보내는 것 ● 헬스 체크를 통해서 정상적인 서버 또는 비정상적인 서버를 판별한다. ex ) AWS L7스위치를 이용한 로드밸런싱 : ALB라는 컴포넌트를 통해서 구축한다. L4스위치를 이용한 로드밸런싱 : NLB..

1. 로그인 인증방식 1) 세션기반인증 HTTP통신 -> 상태없음(stateless) 하다 HTTP 요청을 통해 데이터를 주고 받을 때 요청이 끝나면 요청한 사용자의 정보 등을 유지하지 않는다. 로그인을 했을 때 로그인이 유지되지 않는다. ▶ 세션ID를 생성해서 쿠키에 저장하는 인증방식을 사용한다. ⓛ 세션기반 로그인 프로세스 처음 로그인을 하면 세션ID가 생성 서버에서 세션ID를 쿠키로 설정해서 클라이언트에 전달 클라이언트가 서버에 요청을 보낼 때 해당 세션ID를 쿠키로 담아서 전에 로그인했던 아이디인지 확인 로그인을 유지 ② 장점 서버에서 사용자의 로그인 상태확인을 하기 쉽다. 서버에서 세션정보를 담당하기 때문에 클라이언트가 정보를 변경하기 어렵다. 토큰과 달리 Signiture같이 추가되는 데이터가..

1. 로컬스토리지 웹스토리지 객체 브라우저 내에 { key : value } 형태로 오리진에 종속되어 저장되는 데이터 브라우저내에 저장되기 때문에 chrome 로컬스토리지에 저장된 데이터는 웨일에서는 볼 수 없다. 오리진이 같은 브라우저에서 공유된다. 1) 로컬스토리지 특징 하나의 key에는 하나의 value만 저장된다. 하나의 key에 여러개의 value는 저장할 수 있다. 이경우에는 배열을 이용해 value값을 담으면 된다. 반드시 key는 1개여야 한다. 만료날짜가 없다. 수동으로 삭제 안한다는 전제하에 영구저장이 가능하다. 창종료나 컴퓨터를 종료해더 만료되지 않는다. 최대저장용량이 5MB 사용자의 행위를 기억하거나 로그인을 유지하기위해 사용된다. 로컬 스토리지데이터는 자동으로 서버로 전송되지 않는..

1. HTTP 헤더 클라이언트가 서버에 요청을 할 땐 헤더와 바디를 서버로 보낸다. 헤더는 바디를 설명하는 정보를 포함해서 여러가지 정보가 담긴 정보묶음이고 바디는 컨텐츠의 본문을 말한다. 헤더는 일반헤더, 요청헤더, 응답헤더 3가지로 이루어져 있다. 유연하게 설계되어 있어 커스텀이 가능하다 콜론으로 서로 구분되는 {key-value}형태 ex) {setCookie : cookie} 1) Header의 종류 일반헤더 (General Header) 요청 및 응답의 메시지 모두에서 사용되지만 컨텐츠에는 적용되지 않는 헤더 보안정도가 설정되어있는 Referrer Policy가 포함되어 있다. ex) Date, Cache-Control, Connection 요청헤더 (Request Header) 클라이언트가 서..

1. IP주소 & MAC주소 IP주소 장치들이 서로를 구별하기 위한 논리적 주소 논리적 주소 -> 주소가 변한다. A카페에 노트북을 들고가면 해당 카페이 와이파이에서 IP주소를 부여한다. B라는 카페에도 노트북을 들고가서 와이파이를 이용해 IP주소를 부여받았다 A카페에서 IP주소와 B카페에서 IP주소는 서로 다른 것을 확인할 수 있다. 이때 노트북는 변치않는 고유 주소가 있다. -> MAC 주소라고 한다. MAC 주소 네트워크 인터페이스에서 할당된 고유 식별자 주로 NIC카드에 할당되어 있다 24비트 OUI + 24비트 UAA로 구성된 48비트 주소이다. MAC주소는 보통 유일한 고유 식별자를 갖지만 제조사의 실수또는 의도적으로 변경할 수 있다. 하지만 변경하지 않는것이 좋다. 2. ARP 와 RARP ..

1. 라우팅 1) 라우터와 라우팅 라우터는 둘 이상의 서로 다른 네트워크 사이에서 데이터를 전달하는 장치 서로 데이터를 주고받을 때 패킷 소모를 최소화 하고 경로 최적화를 통해 최소경로로 패킷을 포워딩해준다(라우팅) 라우팅은 네트워크에서 데이터를 보낼 때 최적의 경로를 선택하는 과정이다. 패킷을 받으면 목적지의 IP주소를 서브넷마스크를 적용해서 네트워크를 알아낸다. 그리고 라우팅 테이블 기반으로 패킷을 전송하는데 이 과정을 여러개의 라우터들을 거쳐 데이터가 전달되는 것을 라우팅이라고 한다. 2. 라우팅 테이블 IP 주소를 기반으로 라우터의 위치를 저장한 테이블 또는 데이터베이스 가장 효율적인 루트정보를 다음 패킷을 전달할 때 참고할 수 있도록 저장해 두는 공간 1) 라우팅 테이블 구성요소 네트워크 대상(..

1. TCP(Transmission Control Protocol) / IP(Internet Protocol) 인터넷에서 컴퓨터들이 서로 정보를 주고받는데 쓰이는 프로토콜의 집합 TCP는 많은양의 데이터를 가져와 패킷으로 컴파일 후 전송하고 수신받은 패킷을 원래 메세지로 재조립하는 역할을 하는 프로토콜이다 IP는 인터넷에서 컴퓨터 위치를 찾아 패킷들이 목적지에 제대로 도착하게 하는 역할하는 프로토콜이다. TCP/IP 4계층 모델을 중심으로 설명한다. 프로토콜 컴퓨터와 네트워크가 서로 통신하기 위해서는 같은 방법으로 통신을 해야한다. 하지만 하드웨어와 운영체제들이 달라서 서로 통신하려면 규칙이 필요한데 이 규칙들이 '프로토콜'이다. 1) TCP/IP 4계층 모델 구조 제 4계층 : 애플리케이션 계층 ( A..