728x90

FastAPI 9

FastAPI 강좌 8강: 성능 테스트 및 모니터링

성능 테스트 및 모니터링강의 목표:API의 성능을 테스트하는 도구를 사용해 FastAPI 애플리케이션의 성능을 분석하는 방법을 학습한다.Kubernetes 환경에서 애플리케이션 모니터링 도구를 사용해 실시간 상태를 감시하는 방법을 실습한다. 강의 세부 내용:1. 성능 테스트의 중요성API 성능 테스트는 애플리케이션이 실제 트래픽 하에서 얼마나 빠르게 요청을 처리하는지 측정하는 데 중요한 역할을 합니다.성능 테스트는 대량의 요청에 대한 애플리케이션의 응답 시간, 처리량, 동시성 처리 능력을 분석합니다.2. 성능 테스트 도구 소개Locust: Python 기반의 오픈소스 성능 테스트 도구로, 다수의 동시 요청을 통해 API 성능을 테스트할 수 있습니다.k6: 대규모 부하 테스트를 위한 오픈소스 도구로, 고성..

FastAPI 2024.10.09

FastAPI 강좌 7강: Kubernetes를 활용한 애플리케이션 배포

Kubernetes를 활용한 애플리케이션 배포강의 목표:Kubernetes 클러스터에 FastAPI 애플리케이션을 배포하는 방법을 학습한다.Kubernetes를 사용하여 애플리케이션을 스케일링하고, YAML 파일을 작성하여 배포하는 실습을 진행한다. 강의 세부 내용:1. Kubernetes란?Kubernetes: 컨테이너화된 애플리케이션을 자동으로 배포, 스케일링, 운영하는 오픈소스 플랫폼입니다.Kubernetes는 애플리케이션의 가용성을 보장하고, 대규모 트래픽을 처리할 수 있도록 확장성을 제공합니다.클러스터: Kubernetes는 클러스터 환경에서 애플리케이션을 실행합니다. 클러스터는 여러 개의 노드(서버)로 구성됩니다.2. FastAPI 애플리케이션을 위한 Kubernetes 배포 구조Pod: Ku..

FastAPI 2024.10.09

FastAPI 강좌 6강: 도커를 사용한 FastAPI 애플리케이션 컨테이너화

도커를 사용한 FastAPI 애플리케이션 컨테이너화강의 목표:Docker를 사용하여 FastAPI 애플리케이션을 컨테이너화하는 방법을 학습한다.Dockerfile을 작성하고, 컨테이너 이미지를 생성 및 실행해 FastAPI 애플리케이션을 배포할 수 있다. 강의 세부 내용:1. Docker와 컨테이너 개념Docker란?: 애플리케이션과 그 의존성을 함께 패키징하여 일관된 실행 환경을 제공하는 컨테이너 기술.컨테이너: 운영체제 레벨에서 격리된 환경에서 애플리케이션을 실행할 수 있도록 해주는 가상화 기술.Docker를 사용하면 FastAPI 애플리케이션을 개발 환경과 동일하게 실행할 수 있으며, 일관된 환경에서 배포 및 스케일링이 가능합니다.2. Docker로 FastAPI 애플리케이션 컨테이너화예제 1: D..

FastAPI 2024.10.09

FastAPI 강좌 5강: 비동기 처리와 성능 최적화

비동기 처리와 성능 최적화강의 목표:FastAPI에서 비동기 처리를 이해하고 실시간 요청을 효율적으로 처리하는 방법을 학습한다.비동기 작업을 사용하여 대량의 요청을 처리하는 API를 구현하고 성능을 최적화한다. 강의 세부 내용:1. 비동기 처리의 개념비동기 처리(Async): 요청과 응답 사이의 차단을 없애고, 여러 요청을 동시에 처리할 수 있도록 돕는 방식. FastAPI는 Python의 비동기 기능(async, await)을 지원하여 I/O 바운드 작업에서 높은 성능을 발휘할 수 있습니다.동기 vs 비동기:동기(Synchronous): 각 요청이 완료될 때까지 기다렸다가 다음 요청을 처리하는 방식.비동기(Asynchronous): 요청을 비동기적으로 처리하여 여러 요청을 동시에 처리 가능.2. 비동기..

FastAPI 2024.10.09

FastAPI 강좌 4강: 데이터 분석 결과 API 구현

데이터 분석 결과 API 구현강의 목표:데이터를 실시간으로 분석하고 그 결과를 API를 통해 제공하는 방법을 이해한다./summary와 /top_customers와 같은 분석 결과를 반환하는 엔드포인트를 구현한다. 강의 세부 내용:1. 데이터 분석 결과 API 개요실시간 분석 결과 제공: FastAPI를 통해 실시간으로 데이터 분석 결과를 API로 제공할 수 있습니다. 이를 통해 클라이언트는 항상 최신 데이터를 조회할 수 있습니다.분석 결과 제공 엔드포인트: 데이터 분석 작업을 자동화하고, 필요한 통계 정보를 API 요청에 따라 반환하는 구조를 구현합니다.실습: 데이터 분석 결과를 반환하는 엔드포인트 구현1. 기본 분석 API 엔드포인트 구현먼저 데이터를 간단하게 분석하고 그 결과를 반환하는 /summa..

FastAPI 2024.10.09

FastAPI 강좌 3강: 데이터 처리와 Pandas 연동

데이터 처리와 Pandas 연동강의 목표:FastAPI와 Pandas를 연동하여 데이터를 처리하는 방법을 이해한다.수집된 데이터를 Pandas로 처리하여 변환하는 /process_data 엔드포인트를 구현한다. 강의 세부 내용:1. Pandas와 FastAPI 연동 개념Pandas: Python의 대표적인 데이터 분석 라이브러리로, 데이터 처리 및 변환에 최적화되어 있습니다. 테이블 형태의 데이터를 다루고, 데이터 정리, 변환, 필터링 등 다양한 기능을 제공합니다.FastAPI와 Pandas의 연동: 수집된 데이터를 FastAPI에서 받아 Pandas로 처리하여 통계나 데이터를 변환한 후 클라이언트에 반환하는 구조를 학습합니다.2. Pandas 기본 기능 소개Pandas의 주요 객체:DataFrame: ..

FastAPI 2024.10.09

FastAPI 강좌 2강: 데이터 수집 API 구현

데이터 수집 API 구현강의 목표:FastAPI를 사용하여 데이터를 수집하는 방법을 이해한다.데이터 입력 엔드포인트(/data_input)를 구현하여 API로 데이터를 전송받고 저장하는 방법을 배운다. 강의 세부 내용:1. 데이터 수집 API의 기본 개념API를 통한 데이터 수집: 클라이언트로부터 데이터를 수집하고 이를 서버에서 처리하는 방법을 학습.FastAPI에서는 POST 요청을 통해 데이터를 받아올 수 있으며, 이를 JSON 또는 다른 형식으로 처리할 수 있습니다.2. FastAPI에서 데이터 전송 및 수신HTTP 메서드: FastAPI에서는 GET, POST, PUT, DELETE 등의 HTTP 메서드를 사용하여 다양한 형태의 요청을 처리합니다.POST 요청: 데이터를 서버에 보내기 위해 사용됩..

FastAPI 2024.10.09

FastAPI 강좌 1강: FastAPI 기본 개념과 환경 설정

FastAPI 기본 개념과 환경 설정강의 목표:FastAPI의 기본 개념과 Flask와의 차이점을 이해한다.FastAPI를 설치하고, 로컬 환경에서 기본적인 엔드포인트를 구성하고 실행할 수 있다. 강의 세부 내용:1. FastAPI란?FastAPI는 고성능 비동기 웹 프레임워크로, API 개발을 쉽고 빠르게 할 수 있도록 도와줍니다.비동기 지원, 자동 문서화(Swagger, ReDoc), 유효성 검사, 높은 성능 등의 강점을 제공합니다.Flask와 FastAPI의 주요 차이점:Flask는 동기 방식, FastAPI는 비동기 방식(더 많은 요청을 동시에 처리 가능).FastAPI는 Python의 타입 힌트(Type Hints)를 기반으로 데이터 유효성 검사를 자동으로 지원.FastAPI는 내장된 OpenA..

FastAPI 2024.10.09

데이터 분석 개발자를 위한 FastAPI 강좌 (8강)

시나리오: "데이터 분석 결과를 FastAPI로 제공하는 데이터 파이프라인 구축하기"배경:한 스타트업에서 데이터 분석팀은 매일 수집되는 데이터를 바탕으로 간단한 분석을 수행하고 그 결과를 비즈니스 부서에 제공하는 일을 담당하고 있습니다. 하지만 팀이 사용하는 기존 분석 도구는 결과를 매번 수동으로 공유해야 해서 자동화된 시스템을 도입하고 싶어 합니다. 데이터 분석 결과를 실시간으로 요청받아 API 형태로 제공하는 시스템을 구축해야 하며, FastAPI를 이용해 이를 실현하려고 합니다.시나리오 세부 내용:1. 데이터 수집회사에서는 매일 수집되는 고객 트랜잭션 데이터를 분석하고 그 결과를 실시간으로 제공하려고 합니다.FastAPI 서버가 고객 데이터를 받아 API 엔드포인트에서 바로 사용할 수 있도록 설계합..

FastAPI 2024.10.09
728x90