php发展

首页 » 常识 » 问答 » 今年遇到的PHP面试题Nginx与网
TUhjnbcbe - 2021/6/27 2:31:00
NginxNginx和PHP-FPM怎么通信

一般有两种方式:TCPSocket、UnixSocket。

通过修改Nginx配置中的fastcgi_pass参数来进行切换协议。

TCPSocket

优点:可以跨服务器通信,高并发时也稳定。

缺点:增加了一层网络传输,效率较低。

UnixSocket

优点:不需要经过网络协议栈,开销较小,效率较高。

缺点:高并发时不稳定,连接数爆发时,会产生大量的长时缓存。

相关链接:PHP-FPM和Nginx的通信机制

Nginx负载均衡有哪些策略

roundrobin(轮询)

random(随机)

weight(权重)

fair(按响应时长,三方插件)

url_hash(url的hash值)

ip_hash(ip的hash值)

least_conn(最少连接数)

相关链接:Nginx的负载均衡策略及其配置

Nginx和Apache有什么区别Nginx

Nginx处理请求是异步非阻塞的,在高并发下Nginx能保持低资源低消耗高性能。

轻量级,比Apache占用更少的内存及资源。

静态处理,Nginx静态处理性能比Apache高3倍以上。

Apache

Apache处理请求是同步阻塞的,性能较差。

模块超多,基本想到的都可以找到。

超稳定。

相关链接:Nginx和Apache对比

网络常见的HTTP方法有哪些GET、POST、HEAD、PUT、DELETE、OPTIONS、TRACE、CONNECT相关链接:HTTP请求方式中8种请求方法GET和POST有什么区别GET

GET请求是可以缓存的,我们可以从浏览器历史记录中查找到GET请求。

GET方法提交的数据会直接填充在请求报文的URL上。

浏览器处理的URL最大限度长度为B(不同浏览器不一样),所以GET方法提交参数长度有限制。

POST

POST方法提交的数据会附在正文上(requestbody)。

一般请求正文的长度是没有限制的,但表单中所能处理的长度一般为k(不同协议不同浏览器不一样)。

所以GET方法可以用来传输一些可以公开的参数信息,解析也比较方便,如百度的搜索的关键词,而POST方法可以用来提交一个用户的敏感信息。相关链接:HTTP请求方式中8种请求方法额外阅读:99%的人都理解错了HTTP中GET与POST的区别POST请求中application/x-
1
查看完整版本: 今年遇到的PHP面试题Nginx与网