多路io复用和协程的关系

来源:12-10 生成器实现协程

无限灬

2022-06-15

之前前面章节有说过 事件循环+select+回调的方式来实现高并发,协程本质上是事件循环+协程来实现高并发,类似django和flask这类框架之所以并发不行是因为它是django+uwsgi+nginx来实现的,django是同步阻塞框架,uwsgi使用多线程+多进程来提高并发,但开销较大,即使加上nginx的epoll io多路复用,也不如fastapi和tornado这类使用了asyncio的异步非阻塞框架,那么我想问,协程已经这么快了,还需要搭配nginx来使用吗,如果需要的话是为什么?
说的有点乱,希望老师解惑

写回答

1回答

bobby

2022-06-17

理论上来讲,异步io框架可以不必搭配nginx使用了,但是nginx本身包含的功能比较多,比如负载均衡等,路由转发等等大量的功能,你如果只是为了能将服务器启动起来并连接使用可以不用,但是实际中我们也会用nginx来做很多其他的事情,所以只是可以不用uwsgi了,但是nginx一般我们还是会用的

0
1
无限灬
非常感谢
2022-06-17
共1条回复

Python3高级核心技术97讲,高级进阶的必学课程

socket编程/多线程/多进程/线程池/asyncio并发编程/协程和异步IO

2121 学习 · 551 问题

查看课程