전체 글52 [MoveWave#5] Redis VS Memory Cache (프로젝트 Redis 적용) 캐시(Cache)는 왜 필요할까? 왜 Redis를 선택했을까?웹 서비스를 만들다 보면 반드시 마주치는 고민 중 하나는 다음과 같은 상황입니다.자주 요청되는 데이터를 어떻게 더 빠르게 응답할 수 있을까?외부 API 호출은 느리고, 비용도 큰데 계속 호출해도 괜찮을까?이런 상황에서 등장하는 해결책이 캐시(Cache) 입니다. 캐시(Cache)란?캐시는 자주 사용되는 데이터를 임시로 저장해두고 다음에 같은 요청이 들어왔을 때 빠르게 응답할 수 있도록 도와주는 성능 최적화 전략 사용 이유응답 속도 향상DB나 외부 API에 매번 요청하지 않고, 캐시된 데이터를 바로 응답서버 부하 감소계산 비용이 큰 연산 결과, 외부 요청 등을 줄여줌요청 처리량 증가 (Throughput 향상)더 많은 사용자 요청을 효율적으로 .. 2025. 4. 25. [MoveWave#4] WebClient VS Feign (프로젝트 Feign 적용) WebClient vs Feign: 언제, 왜, 그리고 무엇을 써야 할까?Movewave 프로젝트는 감정 분석, 유튜브 호출과 같은 외부 API를 호출해야 한다.처음에 WebClient로 적용했는데 의문점이 생겼다.Spring MVC를 사용하고 있는데 WebClient로 비동기를 써야 할까?결론을 얘기하면, 현재와 같은 Spring MVC 구조에서는 WebCLient를 써도 별 효과가 없다. 1. Spring MVC는 스레드 기반 동기 처리 모델Spring MVC는 요청이 들어오면 내부적으로 Tomcat 같은 서블릿 컨테이너가 스레드를 하나 할당해서 그 요청을 처리즉, 컨트롤러 로직이 끝날 때까지 그 스레드는 계속 점유중인 상태@GetMapping("/song")public SongResponse get.. 2025. 4. 24. [MoveWave#3] Flask VS Fast API (프로젝트 Fast API 적용) FlaskPython 기반의 경량 웹 프레임워크로 간결하고 유연한 구조를 바탕으로 소규모 웹 애플리케이션이나 REST API 서버를 빠르게 개발할 수 있도록 설계되었음 2010년에 출시되어 커뮤니티와 자료가 풍부하며, 배우기 쉽고 직관적인 코드 스타일이 특징 FastAPI2018년에 등장한 최신 Python 웹 프레임워크로 Python 3.6 이상의 타입 힌드를 적극 활용하고 비동기(async/await) 처리를 기본적으로 지원하는 고성능 API 개발에 특화되어 있음 자동 문서와(OpenAPI), 입력 검증(Pydantic), 높은 실행 성능(Uvicorn 기반) 덕분에 AI/ML 모델 서빙 및 마이크로서비스 아키텍처에서 뜨고 있음 개요항목FlaskFastAPI최초 출시20102018철학단순하고 유연한 .. 2025. 4. 23. [MoveWave#2] AI 모델 서버를 Python으로 사용한 이유(Hugging Face) Hugging Face란?자연어 처리(NLP)를 중심으로 한 머신러닝 생태계의 허브 대표 라이브러리: transformersBERT, GPT, RoBERTa, T5 같은 최신 AI 언어모델을 손쉽게 쓸 수 있도록 만든 라이브러리특징사전학습된 모델 수천 개 무료 제공모델/토크나이저/API 한 줄로 실행 가능커스터마이징이나 파인튜닝도 쉬움오픈소스 기반으로 AI 실무/연구에서 표준처럼 쓰임 사용 이유MoveWave 프로젝트에서 사용한 감성 분석 모델은 사용자가 입력한 텍스트에서 기쁨/슬픔/우울/짜증/설렘같은 감정을 파악직접 개발?데이터 수집모델 설계학습/검증/튜닝이는 매우 비효율적이고 성능 보장이 되지 않음Hugging Face에는 이미 학습된 감정 분류 모델이 수십 종이 있음한국어 기반 감성 모델도 존재한.. 2025. 4. 23. 이전 1 2 3 4 5 ··· 13 다음