水下功夫做透,水上才能顺风顺水。

从URL输入浏览器到页面显示全过程

第一步:域名解析,将域名解析成对应ip。

按先后顺序查看
1.浏览器缓存。
2.本机的host文件。(Linux:/etc/hosts)
3.路由器缓存。
4.本地DNS服务器,递归查询对应IP。[本地域名服务器就以DNS客户的身份,向其他根域名服务器继续发出查询请求报文,而不是让该主机自己进行下一步查询。]

第二步:通过3次握手,建立tcp连接。

 

 

第三步:通过http协议发送请求。

 

第四步:服务器接收请求,并处理,请处理结果即响应发送给浏览器。

Nginx 里的工作进程等于CPU核数。
惊群就是多个进程或者线程在等待同一个事件,当事件发生时,所有线程和进程都会被内核唤醒,而只有一个进程获得了该事件并处理,其他进程发现获取事件失败后又继续进入了等待状态,在一定程度上降低了系统性能。
Nginx解决惊群方案:利用进程锁,变多进程同时监听为单进程轮流监听。

 

 

 

 

 

 

Nginx与PHP的两种通信方式-unix socket和tcp socket
unix socket通信方式Nginx配置nginx.conf,需要在nginx配置文件中填写php-fpm运行的pid文件地址。

location ~ \.php$ {
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;;
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
}

tcp socket通信方式Nginx配置nginx.conf,需要在nginx配置文件中填写php-fpm运行的ip地址和端口号。

location ~ \.php$ {
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
}

 

 

 

第五步:通过四次挥手,释放tcp连接。

 

 

第6步:浏览器对接收到的数据,进行渲染和呈现。

posted @ 2020-05-30 21:31  北方寒士  阅读(269)  评论(0编辑  收藏  举报