computer science 2

[Redis] 개념 정리: 왜 현대 백엔드에서 Redis는 필수인가?

1. Redis란 무엇인가?Redis는 Remote Dictionary Server의 약자로, 한 마디로 정의하면 다음과 같다.“메모리 기반(In-Memory) 데이터 구조 서버”일반적인 데이터베이스가 디스크에 데이터를 저장하는 것과 달리, Redis는 RAM에 데이터를 저장하기 때문에 → 마이크로초(μs) 단위의 매우 빠른 속도를 제공한다.또한 단순한 Key-Value 저장소를 넘어서다양한 자료구조를 제공하는 것이 특징이다.2. 왜 Redis가 필요한가? 1) 기존 문제: DB 병목일반적인 RDBMS(MySQL 등)는 디스크 기반이기 때문에 요청이 많아질수록 다음과 같은 문제가 발생한다.느린 디스크 I/O반복 조회로 인한 부하 증가전체 서비스 Latency 증가 2) Redis의 해결 방식Redis는..

백엔드/CS 2026.04.03

[CS] Thread Pool 한 번에 이해하기

백엔드 개발을 하다 보면 “Thread Pool”이라는 개념을 정말 자주 접하게 된다.특히 Spring 기반 서버를 사용한다면, 우리가 직접 다루지 않아도 내부적으로 항상 사용되고 있다.그런데 단순히“Thread를 미리 만들어두고 재사용하는 것”정도로 이해하면 절반만 이해한 것이다.이 글에서는 Thread → Pool → Thread Pool로 이어지는 흐름을 CS 관점에서 제대로 정리해보려고 한다.1. Thread란 무엇인가?✔ 정의Thread는 프로세스 내에서 실행되는 최소 단위의 작업 흐름이다.✔ Thread의 구조프로세스 내에서 여러 Thread가 존재 가능공유 영역HeapDataCode독립 영역Stack (각 Thread마다 존재)✔ 왜 Thread를 사용할까?동시에 여러 작업 처리 (Concu..

백엔드/CS 2026.04.02