본문 바로가기

분류 전체보기142

26.02.20 Redis 특징, 비동기와 동기, http 메서드, CSRF 와 XSS, 브라우저 렌더링 정리 Redis레디스는 오픈소스 key-value 기반의 인-메모리인-메모리는 데이터를 하드디스크가 아닌 RAM에 저장하고 처리하는 기술 데이터 저장소이다.별도의 쿼리를 날리지 않기 때문에 일반 DB보다 빠르다.Redis 특징1. 성능모든 Redis 데이터는 RAM에 저장되어 대기 시간을 낮추고 처리량을 높인다.평균적으로 읽기 및 쓰기 속도가 1ms로 디스크 기반 데이터베이스보다 빠르다.2. 유연한 데이터 구조Redis의 데이터 타입은 String, Lists, Hashs, Sets, Sorted Set, Bitmap, Streams, Geospatial indexes 등 다양한 데이터 구조를 지원한다.따라서, 애플리케이션의 요구 사항에 알맞은 다양한 데이터 타입을 활용할 수 있다.3. 개발 용이성Redis는.. 2026. 2. 20.
26.01.27 트랜잭션과 인덱스는 어떤 관계가 있을까? 트랜잭션(Transaction)과 인덱스(Index)는 데이터베이스의 성능과 안정성을 지탱하는 두 축이지만, 서로 목적과 작동 방식이 다르다. 간단히 말하자면 트랜잭션은 '데이터의 무결성'을, 인덱스는 '조회 속도'를 담당한다. 트랜잭션 (Transaction): "전부 성공하거나, 아예 안 하거나"트랜잭션은 데이터베이스에서 수행하는 하나의 논리적인 작업 단위를 말한다. 여러 단계의 작업을 하나의 묶음으로 처리하여, 중간에 오류가 나더라도 데이터가 꼬이지 않게 보호하는 것이 목적이다.핵심 원칙 (원자성): "All or Nothing". 10가지 작업 중 9개가 성공해도 마지막 1개가 실패하면 이전의 9개 작업을 모두 취소(Rollback)하고 처음 상태로 되돌린다.대표적인 예시 (계좌 이체):내 계좌에.. 2026. 1. 27.
26.01.23 쿠키와 세션 중에 어떤것을 사용해야 할까? 1. 쿠키 (Cookie)"사용자의 브라우저에 저장되는 작은 기록장"개념: 서버가 클라이언트에게 전달한 데이터를 브라우저가 저장해 두었다가, 이후 요청 시마다 서버에 함께 보내는 데이터 조각이다.저장 위치: 클라이언트(웹 브라우저)특징:이름, 값, 만료 날짜, 경로 정보 등으로 구성된다.브라우저가 종료되어도 만료 시간이 남아있다면 유지될 수 있다. (Persistent Cookie)서버에 요청을 보낼 때마다 HTTP 헤더에 담겨 자동으로 전송된다.단점: 보안에 취약합니다. 누구나 브라우저에서 쿠키 값을 확인할 수 있고 조작도 가능하기 때문이다. 2. 세션 (Session)"서버가 관리하는 사용자의 비밀 장부"개념: 사용자가 웹 서버에 접속해 있는 동안 유지되는 상태 정보다.저장 위치: 서버(메모리나 DB.. 2026. 1. 23.
26.01.22 HTTP와 HTTPS의 차이점 1. HTTP와 HTTPS의 근본적인 차이HTTP (HyperText Transfer Protocol)개념: 텍스트 기반의 데이터를 주고받는 프로토콜이다.단점: 암호화되지 않은 '평문(Plaintext)'을 전송한다. 누군가 중간에서 패킷을 가로채면 아이디, 비밀번호 등을 그대로 볼 수 있다. (마치 내용을 누구나 볼 수 있는 엽서와 같다.)포트 번호: 기본적으로 80번 포트를 사용한다.HTTPS (HTTP Secure)개념: HTTP에 SSL(Secure Socket Layer) 또는 TLS(Transport Layer Security) 프로토콜을 얹어 데이터를 암호화한 버전이다.장점: 데이터를 암호화하여 전송하므로 가로채더라도 내용을 알 수 없다. (내용을 암호문으로 적고 금고에 넣어 보내는 것과 같.. 2026. 1. 22.
26.01.21 GET, POST의 개념과 함께 데이터 흐름 알아보자. GET: 데이터를 "가져오기" 위한 방식GET은 서버로부터 정보를 조회하기 위해 사용된다. 우리가 브라우저 주소창에 URL을 입력하고 엔터를 누르는 행위가 바로 GET 요청이다.특징: 모든 데이터를 URL에 담아 보낸다.데이터 흐름:클라이언트가 URL 뒤에 데이터를 붙여 보낸다.이 데이터 덩어리를 쿼리 스트링(Query String)이라고 부른다.데이터가 주소창에 그대로 노출되므로 보안이 중요하지 않은 정보(검색어, 페이지 번호 등)를 다룰 때 사용한다. POST: 데이터를 "처리하기" 위한 방식POST는 서버의 리소스를 생성하거나 업데이트하기 위해 데이터를 보낼 때 사용된다.회원가입이나 게시글 작성 등이 대표적인 예다.특징: 데이터를 URL이 아닌 HTTP 메시지의 바디(Body)에 담아 보낸다.데이터.. 2026. 1. 21.
26.01.20 3-way-handshake 3-Way Handshake란?3-Way Handshake는 TCP/IP 프로토콜을 이용해 통신을 하기 전, 두 장치(보통 클라이언트와 서버) 사이에 논리적인 연결을 확립하기 위해 사용하는 절차이다.쉽게 말해, 데이터를 주고받기 전에 "내 말 들려?", "응 잘 들려, 내 말은 들려?", "어 잘 들려!"라고 세 번의 인사를 나누며 서로 통신할 준비가 되었는지 확인하는 과정이라고 이해하시면 된다. 작동 방식 (Step-by-Step)이 과정에서는 SYN(Synchronize)과 ACK(Acknowledgment)라는 플래그(Flag)와 시퀀스 번호(Sequence Number)가 핵심적인 역할을 한다.[Step 1] SYN (Client → Server)상태: 클라이언트는 SYN_SENT, 서버는 LIS.. 2026. 1. 20.