기록 111

Weekly Paper #13

1. 세션 기반 인증 vs 토큰 기반 인증세션 기반 인증 (Session-based Authentication)로그인 시 서버가 세션을 생성하고, 클라이언트는 세션 ID만 쿠키로 보관하는 방식입니다.1. 클라이언트 → 로그인 요청2. 서버 → 세션 생성 (서버 메모리/DB에 저장)3. 서버 → 세션 ID를 쿠키로 응답4. 클라이언트 → 이후 요청마다 쿠키(세션 ID) 포함5. 서버 → 세션 ID로 서버에 저장된 세션 조회 → 인증 확인장점서버에서 세션을 직접 관리하므로 즉시 무효화(로그아웃) 가능클라이언트에 민감한 정보가 남지 않음단점서버가 여러 대면 세션 공유 문제 발생 (Redis 같은 세션 스토리지 필요)서버 메모리 사용량 증가모바일 앱, 타 도메인 API 호출에 쿠키 사용이 불편보안 고려사항HTT..

Weekly Paper 2026.06.09

SQLAlchemy - ORM

JPA와 다른 점JPA를 쓰던 입장에서 가장 크게 느낀 차이는 설정이 명시적이다 는 점이다.JPA// 1. 엔티티 선언@Entitypublic class User { @Id @GeneratedValue private Long id; private String name;}// 2. 레포지토리 상속public interface UserRepository extends JpaRepository {}// 3. 그냥 씀userRepository.findAll();커넥션 풀, 트랜잭션, 세션 관리가 전부 Spring이 알아서 해준다.SQLAlchemy# 1. 엔진 생성 (DB 커넥션 설정)engine = create_engine("postgresql://user:pw@localhost/db")# 2..

Python/FastAPI 2026.05.20

FastAPI의 비동기(async/await)

동기(sync)방식import timedef 밥짓기(): time.sleep(5) # 5초 기다림 return "밥 완료"def 국끓이기(): time.sleep(3) # 3초 기다림 return "국 완료"밥짓기() # 5초 기다림국끓이기() # 그다음 3초 기다림# 총 8초동기 방식은 한 작업이 끝나야 다음 작업을 시작한다.밥이 다 되길 기다렸다가 국을 끓이는 것처럼, 기다리는 동안 아무것도 못 함.비동기(async)는 뭐가 다른가import asyncioasync def 밥짓기(): await asyncio.sleep(5) # 5초 기다리는 동안 다른 일 가능 return "밥 완료"async def 국끓이기(): await asyncio.sleep(3..

Python/FastAPI 2026.05.20

Weekly Paper #12

1. AWS RDS를 사용하는 이유 RDS란?AWS RDS(Relational Database Service)는 AWS가 관리형으로 제공하는 데이터베이스 서비스다. MySQL, PostgreSQL, MariaDB, Oracle, SQL Server 등을 지원하며, DB 운영에 필요한 인프라를 AWS가 대신 처리해준다. EC2 직접 설치 vs RDS 비교 항목 EC2에 직접 설치 RDS로 관리운영체제 패치직접 관리AWS 자동 처리DB 엔진 업그레이드직접 수행콘솔에서 클릭 한 번백업직접 스크립트 작성자동 백업 + 스냅샷HA(..

Weekly Paper 2026.05.11

[Monew] 복기 - 일정·개발 측면 회고

뉴스 큐레이션 소셜 플랫폼 MoNew를 팀 프로젝트로 마무리했다. 댓글 도메인을 담당하면서 느꼈던 것들, 배운 것들, 그리고 다음엔 꼭 챙겨야겠다 싶은 것들을 정리해봤다.1. 일정 측면초반 세팅 — 컨벤션과 팀 규칙프로젝트 초반에는 피그마 프로토타입과 기능 요구사항 정의서를 기반으로 방향을 잡고, 팀 컨벤션과 규칙을 수립하는 것부터 시작했다.클래스명, 변수명 네이밍 컨벤션은 초반에 잘 정리됐다. 문제는 테스트 로그 컨벤션이었다. 이 부분을 정하지 못한 채로 넘어갔더니 중간에 팀원마다 다른 방식으로 로그를 남기게 됐고, 나중에 통일하는 게 생각보다 번거로웠다. 다음 프로젝트에서는 테스트 로그 형식도 초반 컨벤션에 반드시 포함시켜야겠다.포맷팅 자동화(spotless, google-java-format 등)도..

Project/Monew 2026.05.10

[클라우드 응용 SW 개발] 6,7주차

[클라우드응용SW개발] 6-7주차 - Azure 웹 앱 서비스의 이해와 배포들어가며이번 주차에서는 Azure에서 제공하는 다양한 웹 서비스 플랫폼을 살펴보고,실제로 Python + Streamlit 기반의 웹 앱을 개발 및 배포하는 과정을 다뤘다.Azure Web App을 중심으로, Static Web App까지 이어지는 흐름을 정리해보자.6주차 - 클라우드 기반 웹 서비스 플랫폼Cloud Service의 종류클라우드 서비스는 크게 세 가지로 나뉜다.종류설명관리 주체IaaS인프라 제공 (VM, 네트워크 등)사용자가 OS 이상 직접 관리PaaS플랫폼 제공, 앱 개발에 집중 가능클라우드가 인프라+플랫폼 관리SaaS소프트웨어 자체를 서비스로 제공클라우드가 전부 관리Azure 웹 서비스 플랫폼 종류Azure A..