服务器如何异步处理请求

时间:2018-01-15 09:30:40

标签: django amazon-web-services nginx server architecture

我知道这是基本但无法连接。

假设django-server(托管在具有3gb ram和1v​​CPU和nginx的linux系统上)正在服务请求(比如R1),大约需要1700ms。

并且在执行100ms期间,请求R2进入。

此处,服务器已忙于处理R1。

那么R2必须等待1700ms - 100ms = 1600ms吗?

这是如何处理的?

有没有类似实例(如在aws中)解决这个问题?

1 个答案:

答案 0 :(得分:0)

首先,1700ms对于请求来说太长了;如果您的观点需要很长时间才能完成,那么您就会遇到问题。

其次,所有部署Django的方法都涉及某种多进程处理。通常这是通过OS进程完成的,尽管它也可能涉及线程。无论哪种方式,它都由您的服务器处理,例如gunicorn,uWSGI或Apache / mod_wsgi。