본문 바로가기

반응형

HTTP

(6)
캐시 파헤치기 캐시(Cache)는 자주 사용하는 데이터를 빠르게 접근할 수 있도록 저장하는 임시 저장소이다.웹 애플리케이션에서는 데이터베이스, 서버, 브라우저 등 다양한 계층에서 캐시를 활용하여 성능을 향상시킨다.1) 캐시의 필요성속도 향상: 데이터를 매번 새로 요청하는 대신 캐시에서 가져와서 빠르게 처리서버 부하 감소: DB 또는 원격 서버의 요청을 줄여 시스템 부하를 낮춤네트워크 트래픽 절감: 동일한 요청을 반복적으로 서버에 보내지 않도록 함2) 캐시(Cache)의 종류클라이언트 측(Cache)브라우저 캐시(Browser Cache)웹 브라우저가 웹 페이지 리소스(HTML, CSS, JavaScript, 이미지)를 저장하여 다음 방문 시 빠르게 로드Cache-Control, ETag 등을 이용하여 캐시를 관리DNS..
세션 파헤치기 1) 정의세션(Session)은 클라이언트와 서버 간의 상태를 유지하는 방식으로, 사용자가 웹사이트를 방문한 후 일정 시간 동안 유지되는 정보를 의미한다.웹은 본질적으로 무상태(Stateless) 프로토콜이기 때문에, 사용자의 로그인 상태나 특정 정보를 유지하려면 별도의 메커니즘이 필요하다.이를 위해 서버 측(Session)과 클라이언트 측(Cookie, Token 등)에서 정보를 저장하고 관리하는 방식이 사용된다.2) 세션(Session)의 동작 방식세션은 서버에서 관리되며, 클라이언트가 요청을 보낼 때 세션 ID를 함께 전송하여 해당 사용자의 정보를 유지하는 방식으로 동작한다.클라이언트가 서버에 요청사용자가 웹사이트에 접속하면 서버는 새로운 세션을 생성한다.서버는 세션 ID(Session ID)를 생..
토큰 파헤치기 토큰(Token)은 사용자의 인증 및 권한을 확인하기 위해 발급되는 문자열로, 보안 및 인증 시스템에서 중요한 역할을 한다.특히 웹 애플리케이션에서 세션(Session)과 함께 사용자 인증을 관리하는 주요 방식이다.1) 토큰의 필요성웹 서비스에서 사용자의 인증을 유지하기 위한 전통적인 방식은 세션(Session) 이었지만, 다음과 같은 문제점이 있었다.✅ 서버 부하 증가세션은 서버가 직접 사용자 정보를 저장해야 하므로, 사용자가 많아질수록 서버 부하가 증가.여러 개의 서버를 사용할 경우, 세션을 공유해야 하는 문제가 발생.✅ 분산 환경에서의 문제여러 서버에서 서비스하는 경우, 특정 서버에 저장된 세션 정보를 다른 서버에서 사용할 수 없음.✅ 확장성 부족서버가 인증 정보를 관리해야 하므로, 확장성이 떨어짐..
쿠키 파헤치기 1) 정의쿠키(Cookie)는 웹 서버가 사용자의 웹 브라우저에 저장하는 작은 데이터 조각으로, 주로 사용자 세션을 유지하거나 특정 사용자 정보를 저장하는 데 사용된다. 웹이 기본적으로 무상태(Stateless) 프로토콜이기 때문에, 쿠키는 사용자의 상태를 기억하는 역할을 한다.쿠키는 주로 다음과 같은 용도로 사용된다:사용자 인증(Authentication): 로그인 상태 유지세션 유지(Session Management): 장바구니 정보 저장, 사용자 설정 유지트래킹(Tracking): 방문 기록 및 사용자 행동 분석2) 쿠키의 동작 방식쿠키는 클라이언트(웹 브라우저)와 서버 간의 HTTP 요청 및 응답을 통해 교환되며, 동작 과정은 다음과 같다.서버가 쿠키 설정사용자가 웹사이트에 처음 방문하면, 서버는..
REST API 1. REST API란? REST (Representational State Transfer) API는 웹 응용 프로그램에서 사용되는 일반적인 소프트웨어 디자인 패턴 중 하나이다. 이 패턴은 네트워크 아키텍처에서 자원을 정의하고 해당 자원에 대한 HTTP 요청을 처리하는 방법을 제공한다. 2. REST API 특징 1) 자원 (Resource) 모든 것이 자원이며, 각 자원은 고유한 식별자 (URI)를 가지고 있다. 2) 메서드 (Method) HTTP 메서드 (GET, POST, PUT, DELETE 등)를 사용하여 자원에 대한 액션을 수행한다. 3) 메시지 (Message) HTTP 메시지를 통해 데이터를 전송한다. 4) 표현 (Representation) 자원의 상태를 JSON, XML, HTML ..
HTTP란? 1. HTTP(HyperText Transfer Protocol) 정의 HTTP는 HyperText Transfer Protocol의 약자로, 인터넷에서 웹 페이지를 전송하는 데 사용되는 프로토콜이다. HTTP는 클라이언트와 서버 간의 통신을 처리하며, 주로 웹 브라우저가 서버에서 웹 페이지를 요청할 때 사용된다. HTTP는 요청-응답(request-response) 모델로 작동한다. 클라이언트(웹 브라우저)는 서버에게 요청(request)을 보내고, 서버는 요청을 처리한 후 클라이언트에게 응답(response)을 보낸다. 요청과 응답은 HTTP 메시지라는 형식을 갖추고 있다. 요청 메시지에는 요청의 종류(GET, POST, PUT, DELETE 등)와 요청 URI(Uniform Resource Iden..

반응형