전체 글

새로운 가능성을 그려가는 코드 속에 끊임없이 피어나는 도전의 순간
·컴퓨터 공학
개요현대 웹 애플리케이션에서는 사용자가 한 번 로그인한 후에는 요청마다 다시 로그인하지 않고도 인증 상태를 유지해야 한다. 이를 구현하는 대표적인 방법으로 세션(Session) 기반 인증, JWT(Json Web Token) 기반 인증, OAuth 2.0 기반 인증(제3자 인증 위임)이 있다. 각각의 개념과 동작 흐름, 장단점, 보안 고려사항을 살펴보고 간단한 코드 예시를 통해 이해해보자. 세션 기반 인증 (Session-Based Authentication)개념세션 기반 인증은 서버가 사용자 인증 정보를 직접 저장하고, 클라이언트(브라우저)는 이 세션에 대응하는 세션 ID를 쿠키로 가지고 있는 방식이다. 브라우저가 요청을 보낼 때마다 쿠키에 담긴 세션 ID를 보내주면, 서버는 해당 세션 ID에 매핑된 ..
개요Docker에서 네트워크는 컨테이너 간 통신과 외부 서비스 연동에 매우 중요한 역할을 한다. 컨테이너 기술은 프로세스를 격리하여 실행하지만, 대부분의 실제 애플리케이션은 데이터베이스나 웹 등 다른 서비스와 통신해야 한다. 따라서 Docker에서 네트워킹을 잘 이해하면 컨테이너끼리 연결하고, 호스트 또는 외부와 안전하게 소통하며, 필요한 경우 특정 네트워크 환경을 구성할 수 있다.이 글에서는 Docker의 네트워크 관련 핵심 개념들을 정리해보자. 먼저 컨테이너를 실행할 때 설정할 수 있는 네 가지 네트워크 모드인 bridge, host, none, container: 모드를 알아보고 각각 언제 사용하는지 살펴볼 것이다. 이어서 Docker 네트워크를 사용자가 정의해서 만드는 방법과 종류(예: bridg..
개요스파크 동작의 원리를 Jupyter Notebook 환경에서 실습하고, Spark UI를 통해 내부 처리 과정을 살펴보는 방법을 정리한다.  Jupyter Notebook 환경에서 Spark 설정하기 Spark 설치로컬 환경 혹은 도커 환경에서 Spark를 설치한다.설치 후, spark-submit, pyspark 등의 명령이 정상 동작하는지 확인한다.Jupyter Notebook 설치 및 실행pip install jupyter (또는 pip3 install jupyter)터미널에서 jupyter notebook 명령 실행브라우저가 자동으로 열리거나, http://localhost:8888 주소로 접속한다.PySpark를 Notebook에서 사용노트북 셀에서 from pyspark.sql import..
개요스파크는 대규모 데이터를 빠르게 처리하기 위해 분산 처리 메커니즘을 갖춘 프레임워크이다. 스파크가 동작하는 원리를 이해하려면 Driver, Executor, Cluster Manager, 그리고 RDD, DAG, Job, Stage, Task 등 핵심 요소들을 살펴보아야 한다. 내용전체적인 아키텍처(Driver, Executor, Cluster Manager)Driver(드라이버) 는 사용자가 작성한 코드를 해석하고, 분산 작업을 지시·관리하는 주체이다.Executor(실행기) 는 Driver로부터 전달받은 작업을 실제로 수행하는 프로세스이며, 각 노드(Worker)마다 여러 Executor가 존재한다.Cluster Manager(클러스터 매니저) 는 Spark Standalone, YARN, Mes..
지혜와 본질을 추구하는 자
좋은 개발자 현명한 사람