advanced
Python 비동기 프로그래밍 성능 최적화
기존의 동기식 I/O 작업을 수행하는 Python 스크립트를 분석하고, asyncio와 aiohttp를 활용하여 고성능 비동기 시스템으로 리팩토링하십시오.
📝 Contenuto del prompt
다음은 외부 API에서 대량의 데이터를 가져와 처리하는 기존 Python 코드의 의사코드입니다:
[의사코드: requests.get을 이용한 순차적 루프 처리]
이 코드를 분석하여 다음 요구사항을 충족하는 비동기 프로그램으로 리팩토링하십시오:
1. asyncio 및 aiohttp 라이브러리 사용
2. 동시 요청 수(Concurrency limit)를 제어하여 서버 과부하 방지
3. 재시도 로직(Exponential Backoff 적용) 및 타임아웃 처리 포함
4. 리팩토링 전후의 실행 시간 비교 및 성능 향상 지표 산출
5. 비동기 컨텍스트 관리자를 사용한 리소스 관리