파이썬에서 동시성 / 병렬성 프로그래밍을 사용하여 데이터를 수집하여 MongoDB에 적재하고 분석하여 모던 웹 프레임워크인 FastAPI를 사용해 수집한 데이터를 시각화한 웹 앱을 개발합니다. 이 과정에서 코루틴, 멀티 스레딩과 멀티 프로세싱을 사용한 파이썬 동시성 / 병렬성 프로그래밍을 배우고 이해하며, 이를 사용하여 파이썬의 성능을 높이는 방법을 이해합니다. 파이썬 동시성 / 병렬성 코드를 실무에 바로 적용할 수 있도록 도와드립니다. 개발만 하고 끝나는 것이 아니라 AWS 클라우드에 실제 앱을 배포하고 운영하는 방법에 대하여 알려드립니다.
이런 걸
배워요!
동시성 / 병렬성 프로그래밍 코드 설계 원칙
파이썬 코루틴, 비동기 프로그래밍
파이썬 멀티 스레딩, 멀티 프로세싱 기법
프로세스와 스레드 관련 OS 지식
MongoDB를 사용하여 비정형 빅데이터 적재하기
FastAPI를 사용하여 서버 개발, 비동기 게이트웨이 Uvicorn 사용
AWS 클라우드 서버 구축
웹 데이터 크롤링, 시각화
느린 파이썬?
동시성·병렬성 프로그래밍으로 날개를 다세요!
이 강의 목적은 크게 두 가지입니다. 동시성·병렬성·비동기 프로그래밍의 개념을 정확히 이해하는 것과 어떤 상황에서 어느 코드를 사용하는지 알려드리는 것입니다.
강의 후반부에는 동시성 프로그래밍을 통해 실제 프로젝트를 진행하면서 해당 개념을 이론 숙지를 넘어 실제로 실무에서도 사용할 수 있도록 도와드립니다.
파이썬 버전 3.7 이후 동시성·비동기·병렬성 프로그래밍에 대한 지원이 대폭 늘어났습니다. 이에 대한 수요가 커지면서 동시성·비동기·병렬성 프로그래밍을 지원하는 프레임워크 및 라이브러리도 많이 등장하고 있습니다. 하지만 버전마다 바뀌는 파이썬 문법에 어려움을 겪는 분들이 많습니다. 또 이론으로는 배웠으나 실제로 언제 어떻게 문법을 적용해야 하는지 모르는 분도 많습니다.
이 강좌는 동시성·비동기·병렬성에 대한 개념을 파이썬 최신 문법에 맞추어 실습까지 진행해 바로 적용할 수 있도록 도와드립니다.
이 강의에서는 동시성과 병렬성을 모두 다루고 실제로 적용할 수 있는 방법을 알려드리고 있습니다. 이 때문에 이 강의의 제목인 동시성 프로그래밍은 이중적인 의미가 있습니다. 동시성(Concurrency)과 병렬성(Parallelism)에서의 동시성과 동시에(at the same time)의 의미로서의 동시성입니다. 병렬성을 표현할 때 '동시에' 또는 '한순간에'라고 표현할 때가 많기 때문입니다.
동시성? 병렬성?
이게 다 뭐야?
동시성과 병렬성이
무엇인지, 왜 필요한지
이해하고 싶다면
최신 파이썬 문법으로
동시성 프로그래밍
동시성·비동기·병렬성
문법을 최신 버전으로
쓰고 싶다면
파이썬 동시성 문법을
실무에서도
실무에서도 적용할
수 있는 동시성
프로그래밍
백엔드 개발자도
궁금한 FastAPI
비동기 문법을 적극
사용하는 FastAPI을
써보고 싶다면
동시성 프로그래밍
병렬성 프로그래밍
Q. 파이썬 선수 지식은 어느 정도로 필요한가요?
이 강의를 수강하기 위해 필요한 파이썬 선수지식은 기본적인 변수, 조건문, 반복문, 함수, 클래스 문법입니다. 강의를 진행하면서 만나게 되는 난이도 있는 문법들은 따로 상시 업로드되는 보충 강의를 통해 배울 수 있습니다.
Q. 수강 관련 참고 사항(갖춰야 할 환경, 기타 유의사항 등)이 있나요?
파이썬 버전은 3.7 이상인 환경에서 진행됩니다
기술은 계속 변화합니다. 과거에 작성했던 코드를 현재에서도 고칠 것이 없다면, 그동안 배운 것이 없다는 말이 있습니다. Python 버전이 업그레이드되면 더 좋은 기술을 익히실 수 있도록 업그레이드된 버전에 맞추어 강의를 업데이트하겠습니다.
강의를 수강하시면서 이해가 안 되거나 추가적인 설명이 필요한 부분은 언제든지 논리적으로 사례와 함께 답변을 드립니다. 수강생분들의 질문을 기다립니다!
학습 대상은
누구일까요?
동시성 프로그래밍으로 파이썬 프로그램의 속도를 올리고 싶은 분
파이썬 동시성 프로그래밍을 실무에서 바로 사용하고 싶은 분
MongoDB에 데이터를 적재하고 관리하고 싶은 분
FastAPI를 도입하고 싶은 스타트업 백엔드 개발자
동시성 프로그래밍으로 효율적으로 크롤링하고 싶은 분
개발을 넘어 실제로 웹 앱을 배포하고 운영하고 싶은 분
선수 지식,
필요할까요?
Python 기본 지식 (변수, 조건문, 반복문, 함수 등)
안녕하세요. IT 지식 크리에이터, 윤상석입니다. 🎩
더 유익하고 본질적인 지식 콘텐츠로 많은 가치를 드릴 수 있도록 노력하겠습니다.
- (주)하이퍼이지 대표이사
- (사)한국정보통신네트워크협회 AI분과기술위원
- (주)블루밴드 기술이사
- 前 (주)마로마브 웹 개발자
- 前 소프트웨어 엔지니어 기술 용역 (카카오, 포스코DX, )
- 前 소프트웨어 공학 온/오프라인 교육 다수 (스타트업, GS리테일, 삼성 등)
문의사항, 추가질문, 집필, 강의제안 ==> EndUpFree@gmail.com
전체
32개 ∙ (5시간 40분)
강좌 및 섹션 소개 (필수!)
06:05
강의 수강 방법 (필수!)
03:41
동기 vs 비동기
13:52
파이썬 코루틴의 이해
14:09
파이썬 코루틴 활용
14:43
컴퓨터 구조와 운영체제 기본
09:34
동시성 vs 병렬성
11:48
파이썬 멀티 스레딩
12:07
파이썬 멀티 프로세싱, GIL
12:25