인프라 3

DB 또는 API 개발에서 자주 사용되는 upsert 용어에 대하여

"upsert"는 프로그램 개발, 특히 데이터베이스나 API 설계에서 자주 사용되는 용어이다.개발자 사이에서는 거의 표준 용어처럼 널리 사용된다. ✅ upsert란?upsert = update + insert즉, 데이터가 있으면 update, 없으면 insert 하는 동작을 하나로 처리하는 방식이다. 🔍 사용 시점예시 1: 사용자 정보 저장 시사용자가 로그인할 때:기존 사용자면 → 정보 업데이트신규 사용자면 → 새로 저장→ users 테이블에 upsert 실행 🧾 SQL 기준 예 (PostgreSQL) INSERT INTO users (id, name, email)VALUES (1, '홍길동', 'hong@test.com')ON CONFLICT (id)DO UPDATE SET name = EXCLU..

인프라 2025.05.14

JWT의 payload 란

Payload 란payload는 영어로 "짐", "적재물"이라는 뜻이지만, 토큰(JWT)에서는 실제 전달하려는 "데이터 내용"을 의미한다. 🔐 JWT 구조에서의 PayloadJWT는 3 부분으로 구성된 문자열이다.xxxxx.yyyyy.zzzzz 문자열 설명xxxxxHeader토큰 타입과 서명 알고리즘yyyyyPayload실제 정보(사용자 ID, 권한, 만료 시간 등)zzzzzSignature토큰 위조 방지를 위한 서명 🔎 예시 (디코딩된 JWT Payload){ "sub": "user123", "name": "홍길동", "exp": 1715688840, "role": "admin"}sub: 사용자 식별 IDexp: 만료 시간 (UNIX timestamp)role: 사용자 권한💡 특징📖 읽을..

인프라 2025.05.14

Mac (맥북) 에서 Docker Desktop 악성코드 문제 해결

2025년 이후 일부 mac OS에서 기존 Docker Desktop를 실행 시 악성코드 발생 팝업이 오픈되면서 문제가 발생하는 케이스가 있다. dockerdocs 홈페이지에서는 4.28 및 이전 버전은 이 문제의 영향을 받지 않는다고 한다. 이를 해결할 솔루션을 알아보자. 첫째, 기존 Docker Desktop를 삭제한다.1. 이미 Docker Desktop 이 오픈되지 않기 때문에 Docker Desktop GUI 에서 삭제하는 방법은 패스한다. ❌ 2. CLI 에서 삭제한다. ⭕/Applications/Docker.app/Contents/MacOS/uninstall이후 Docker 애플리케이션을 휴지통으로 옮긴다.혹시나, Docker Desktop을 제거한 후에도 일부 잔여 파일이 남아 있을 수 있..

인프라 2025.04.13