
PPC方案也称为进程建立连接方案;如图:

prefork方案称之为预先加载进程方案,如图:

当客户端发来到服务端,父进程接收到请求,再将请求转给预先加载好的子进程,进行业务处理[数据的读取,数据的添加]。
TCP方案称为进程与线程的方案;如图:

当客户端发送请求到服务端,服务端系统[主进程]接收到请求并创建一个子线程来处理业务逻辑[数据读取,数据添加]。
prethread方案可以称为预先加载线程的方案;如图:

当客户端发送请求到服务端,服务端系统[主进程]接收到请求转给预先创建好的子线程来处理业务逻辑[数据读取,数据添加]。
线程池是将预先创建好的线程放在线程池中;如图:

当客户端发送请求到服务端,服务端系统[主进程]接收到请求到线程池中取一个线程来处理业务逻辑 [数据读取,数据添加]。
概念

缺陷
概念

核心思想
优点
缺陷
多路复用+多线程其实就是一个主进程加多个线程的处理方案;如图:

当系统[微服务]启动之后,Reactor框架中的select监听客户端的请求,当客户端发起查询商品请求后,Reactor框架中的select会判断是建立连接还是进行业务处理,如果第一次进来收到是连接请求,Reactor回将该请求给dispach,dispach转给Accept,Accept并创立连接,同时并创建Handler类根据事件类型在主进程里面开启一个新的线程处理业务逻辑;当客户端发起查询订单请求后,Reactor框架中的select会判断是建立连接还是进行业务处理,如果第一次进来收到是连接请求,Reactor回将该请求给dispach,dispach转给Accept,Accept并创立连接,同时并创建Handler类根据事件类型在主进程里面开启一个新的线程处理业务逻辑;
谁先完成业务处理,谁就先返回给客户端。
当客户端发起请求,主进程Reactor框架的select监听客户端的请求,Reactor会将该请求给dispach,dispach转给Accept,Accept并创立连接后,再将请求交给子进程,子进程会创建一个线程处理业务逻辑;[主进程与子进程相互隔离,主进程负责建立连接,子进程创建线程,线程负责处理业务逻辑。python与go语言符合这种方案,既可以多进程又可以多线程;C#与java是单进程多线程方案;nginx也是用的多进程的方案] 如图:

缺陷
概念

实现场景
1 使用Nginx部署系统集群,如图:

2 使用nginx集群部署系统集群,如图:

3 使用F5部署nginx集群,如图:

F5处理并发能力差不多在100万左右。
缺陷

当客户端发起请求到dns服务器,使用负载均衡算法获取到相应的IP地址,再根据地址到相应的F5设备,F5再用负载均衡算法到相应的nginx服务器,nginx再用负载均衡算法到相应的服务处理业务逻辑。
缺陷