代理服务器分布式网络,它从靠近用户的位置提供内容
推送 PUSH
当服务器内容发生变动,推送 CDN 接受新的内容。
拉取 PULL
当用户请求该资源的时候,从服务器拉取资源。
负载均衡起到了一个均衡负载的作用
额外的功能:
工作-备用 / 双工作
主进程监听不同的进程信号,并且作出反馈。
单请求单 worker, 并且不支持 persistent connections
在 CPU 和网络贷款上资源有限。(啥意思,,)
即请求时间不定的情况应该是要避免的。
异步场景
通过 eventlet / gevent 使用 Greenlets
tornado
https://stackoverflow.com/questions/25834333/what-exactly-is-a-pre-fork-web-server-model
pre-forking 意味着 一个 master 创建了多个 fork 来处理请求。每一个分叉意味着一个独立的 *nix 进程(不一定吧,异步 worker 怎么算?)。
The pre in pre-fork means that these processes are forked before a request comes in. They can however usually be increased or decreased as the load goes up and down.
libev / libuv
epoll or kqueue, it is always indispensable to the asynchronous topic.
asyncio
sanic
libuv
uvloop