我们的服务器有很多CPU,如果请求处理程序会进行一些并行处理,一些Web请求会更快。
示例:需要对N(约1-20张)图片进行一些工作,以及严重的网络请求。
在请求进入之前缓存或执行这些操作是不可能的。
使用多个硬件CPU可以做些什么:
平台:Django(Python)
答案 0 :(得分:3)
关于第二种和第三种选择:您不需要为每个请求启动新进程。这是process pools的用途。您的应用启动时会创建新流程。当您向池提交请求时,它会自动排队,直到工作人员可用。缺点是请求被阻止 - 如果此时没有工作人员,您的用户将坐下来等待。
答案 1 :(得分:1)
您可以使用standard library module asyncore。
此模块提供了编写异步套接字服务客户端和服务器的基本基础结构。
how to create a basic HTML client有一个例子。
然后是Twisted,它可以做很多事情,这就是为什么它有点令人生畏。这是一个example using its HTTP client。
Twisted“说HTTP ”,asyncore没有,你将不得不。
其他图书馆: