web服务器选型的注意点

(1)接收请求的进程模型

是使用每请求一进程,每请求一线程,还是每一个进程处理多个请求。

对于通过worker自进程接收请求的情况下,是通过主进程分配请求还是子进程自己竞争获取,及所有的子进程都处于等待的状态,如果有请求过来,则所有进程都被唤醒,谁能够抢得该请求,谁就进行处理。

(2)使用同步IO还是异步IO,使用阻塞IO还是非阻塞IO。

对于非阻塞IO,一般使用的是多路复用IO模型,对于如下的几种多路复用IO进行选择:select,poll,epoll,还有选择触发的方式是水平触发还是边缘触发等等。

(3)对于静态文件处理的优化

当web服务器作为反向代理服务器时,对于静态资源,可以在反向代理服务器上面直接返回给客户端,而不需要发送到后端的服务器中。

对于静态文件的发送,可以考虑以下几种优化:

(1)是否使用sendfile,使用了sendfile,文件的数据会在内核中直接从磁盘缓冲区发送到对应的socket的网卡缓冲区,而不需要通过用户区进行复制,至少减少一次复制操作。

(2)是否只用直接IO(directIO),就是在获取文件时,不使用磁盘缓冲区,而是直接获得,会少一次数据复制的工作。

(3)对于静态文件的打开,是否使用缓存,将静态文件打开后获得的文件描述符进行缓存,可以节省每次请求打开静态文件的工作量。

(4)对于长连接的设置

是否需要使用长连接。

(5)对于动态内容的缓存

对于动态内容进行缓存,使用的缓存的key可以是哪些信息,缓存使用的介质是什么,如何主动使缓存失效。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值