>  기사  >  웹 프론트엔드  >  asyncio의 장점과 단점

asyncio의 장점과 단점

php中世界最好的语言
php中世界最好的语言원래의
2017-11-27 15:05:493559검색

오늘은 asyncio의 장점과 단점을 알려드리겠습니다. 비동기 IO를 배우려면 코루틴과 asyncio를 알아야 합니다. 그러면 asyncio가 정확히 무엇인가요? 비동기오를 어떻게 사용하나요? 아래에서 하나씩 답변해드리겠습니다

장점

비동기 IO 작업에 사용하기 매우 쉽습니다

Programmingmodel이 더 간단하고 부담이 상대적으로 적습니다.

asyncio를 사용하여 이벤트 루프를 얻으세요

그런 다음 이 항목(코루틴)이 루프에 채워져 있습니다

운영 체제는 여전히 단일 스레드로 보이지만 거시적 관점에서는 "다중 동시성"으로 보입니다(모든 언어는 거의 다음과 같습니다. 사용자 모드 모델의 멀티 스레드)

단점

생태가 미성숙하고(aio-libs가 있지만) 요청과 같은 라이브러리에도 해당 구현이 있으면 좋을 것입니다(인기도 높을 것임)

전제: 앱은 앞에서부터 뒤로 빌드해야 합니다. 모두 비동기식이어서 많은 레거시 프로젝트에 부담이 됩니다

gevent + Python 2

많은 프로젝트가 Python 2를 기반으로 하며 gevent를 사용하면 효과는 다음과 같습니다. 당연합니다

유일한 걱정은 gevent가 할 것이라는 점입니다. 패치(표준 라이브러리 해킹)도 많고, 보이는 것은 블랙박스이므로 걱정할 수밖에 없습니다. gevent의 효율성이 반드시 asyncio보다 낮지는 않습니다. + async def.

프레임워크

(저는 표준 라이브러리의 것을 선호합니다), async def/await를 기본 설계 방법으로

aio-libs에서 다양한 libs를 사용합니다(처음부터 비동기여야 합니다). 끝까지!)

믿거나 말거나 이 사례를 읽고 나면 방법을 익혔을 것입니다. 더 흥미로운 정보를 보려면 PHP 중국어 웹사이트의 다른 관련 기사를 주목하세요!

관련 읽기:

CSS 웹페이지 정렬 오류를 처리하는 방법

css3를 사용하여 아이콘 효과를 만드는 방법

캔버스를 사용하여 공과 마우스 사이의 상호 작용을 구현하는 방법

위 내용은 asyncio의 장점과 단점의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.