비동기 프로그래밍의 지름길 Asyncio 비동기 프로그래밍을 위한 파이썬 라이브러리 Asyncio를 다루는 실용서다. 대규모 동시성 작업과 높은 안전을 보장하는 Asyncio를 다양한 사례로 소개한다. 예제를 통해 파이썬의 기존 방식과 새로운 비동기 방식의 차이점을 실용적인 관점에서 설명하고 async/await 언어의 새로 도입된 문법과 Asyncio와 호환되는 인기 있는 라이브러리를 소개한다.
저자소개
20년 차 베테랑 파이썬 프로그래머. 화학공학 석사 학위가 있고, 전공 분야에서 모델링부터 데이터 분석까지 다양한 파이썬 프로그램을 작성했다. 파이썬 외에도 고객 관계 관리(CRM)를 비롯해서 의료 재무관리 프로그램 개발이나 GPS 추적 등 다양한 분야의 프로젝트에 참여한 바 있다.
목차
CHAPTER 1 Asyncio 소개1.1 ThreadsBot 식당 이야기1.2 에필로그1.3 Asyncio로 해결할 수 있는 것은?CHAPTER 2 스레드에 관한 진실2.1 스레딩의 장점2.2 스레딩의 단점2.3 사례 연구: 로봇과 식기CHAPTER 3 Asyncio 공략3.1 퀵스타트3.2 Asyncio의 탑3.3 코루틴3.4 이벤트 루프3.5 Task와 Future3.6 비동기 콘텍스트 관리자들: async with3.7 비동기 이터레이터 async for3.8 비동기 제너레이터를 사용한 더 간단한 코드3.9 비동기 컴프리헨션3.10 시작과 종료(부드럽게!)CHAPTER 4 여러분이 사용하지 않는 Asyncio 라이브러리 20개4.1 표준 라이브러리4.2 트위스티드4.3 The Janus 대기열4.4 aiohttp4.5 ØMQ(ZeroMQ)4.6 asyncpg와 Sanic4.7 그 외 라이브러리와 자료CHAPTER 5 마치며APPENDIX A 파이썬의 비동기 지원에 대한 역사A.1 태초에 asyncore가 있었다A.2 네이티브 코루틴으로 가는 길APPENDIX B 보충 자료B.1 Asyncio를 사용하는 식기 예제B.2 새로운 웹사이트 스크레이퍼에 대한 보충 자료B.3 ZeroMQ 사례 연구를 위한 보충 자료B.4 asyncpg 사례 연구를 위한 데이터베이스 트리거 처리B.5 Sanic 예제를 위한 보충 자료: aelapsed와 aprofiler