phper必知必会(一)
1.http返回状态
200:成功,服务器已经成功处理了请求,并正常返回了提供请求的网页
301:永久移动,服务器会将请求转移到新的服务器地址
302:临时移动
401:未授权请求,请求需要身份移动
403:禁止,服务器拒绝请求
404:未找到,服务器为找到网页,一般是请求地址不存在导致
500:服务器内部错误
502:尚未实施,服务器无法识别请求方法
502:错误网关,服务器作为网关或代理时受到无效的响应是出现的状态值
503:服务器不可用,一般是由于超载或者停机维护
504:网关超时
505:http版本不支持,服务器不支持当前请求的http版本
2.列出linux常见信号并作出说明
sigint(2):终止进程,同城我们ctrl+c就发送这个消息
sigquit(3):退出进程,和sigint类似,进行收到该消息会产生core文件
sigkill(9):杀死进程信号,一般使用kill -9来杀死进程的时候发送该信号
sigterm(15):杀死进程信号,不带参数kill默认发送的信号
sigstop(19):停止进程执行信号,一般是指暂停执行
3.你怎么理解同步和异步
同步:就是指串行执行,如果拿php程序理解的话就是一个php脚本有多个echo输出,运行脚本后会按照脚本的顺序依次打印出来,这个是程序从上向下的执行原理,这样的过程叫同步。
异步:就是并行执行,拿php程序理解的话就是,php将要处理的事情写入到了队列,后台有程序出发或者定时处理去处理这个队列,它只负责存储到队列,具体队列之后要执行什么样的操作它不会去管,可以理解为是开启了另外的线程方式,这样的过程就叫做异步。
eg:比如小明喊我去吃饭,我听到后,他等着我然后跟他一起去吃饭,这个过程叫个同步。如果他叫了我后,他独自就去吃了,他不会管我听了没听到,也不会管我是去吃饭了还是去干别的事情了这样的过程叫异步。
4.阐述阻塞模式,非阻塞模式
阻塞模式:以套接字为例,在阻塞模式下,比如在利用tcp协议发送一个报文时,如果低层协议没有空间来存放用户数据,则应用进程将阻塞等待直到协议有可用的空间,这里强调等待,阻塞通信时发送方的send调用需要接受方的recv调用的配合才可以完成。
非阻塞模式:比如在利用tcp发送报文时,如果低层协议没有空间来存放数据,则调用将直接返回而不需等待。
5.解释下cookie与session
1.cookie与session它们都是针对http协议的局限性提出来的一种保持客户端和服务端会话连接状态的机制。
2.cookie在浏览器端存储数据并以此跟踪和识别用户的机制,浏览器通过http协议和服务器端进行cookie交互
3.cookie是由浏览器实现和管理的
4.cookie可以通过跨域来实现单点登录
5.session一般称为会话,用户在浏览器web时,从进入web到浏览器这个段时间内的会话
6.session是存储在服务器中,所以当系统过大使用分布式的时候就会出现session不共享的问题,这个时候可以通过存储在第三方或其它方式解决session共享的问题
7.session与cookie一般结合使用来维持用户登录状态,session通过一个被称为seesion_id的cookie和服务器联系,再次访问web的时候cookie中sesssionid通过http来请求来跟服务器端的sessionid比比较对比成功则实现状态维持。
6.阐述什么叫僵尸进程,以及产生的原因
在linux系统中,一个进程结束了,但是其父进程没有等待(调用wait/waitpid)它,那么它将变成一个僵尸进程。僵尸进程是一个已经死亡的进程,但在进程表中仍占据一个位置
7.osi七层模型和tcp四层模型
osi七层模型如下图:

osi七层对应tcp四层协议图

传输层tcp/udp协议,下面贴出tcp/ip三次握手图

举个简单的例子,两个人小S和小C打电话
形象解释tcp三次握手的过程:
小S:喂,是小C么?
小C:嗯嗯是的,你是小S么?
小S:是的是的,咱们开始愉快的聊天吧!
解释tcp四次挥手的过程:
小S:喂,小C,我有点累啦,今天要不就这样吧
小C:好呀,你休息下,我再说两句
小C:哎呀,我也好累呀,今天就到这里吧
小S:好,那就到这吧,886
8.cgi,fast-cgi,php-cgi,php-fpm之间的关系

cgi:是web server与web application之间数据交换的一种协议
fastcgi:同cgi一样是一种通信协议,但比cgi在效率上做了一些优化。
php-cgi:是php(web application)对web server提供的cgi协议的接口程序。
php-fpm:是php(web application)对web server提供的fastcgi协议的接口程序,额外还提供了相对智能一些的任务管理。
9.阐述php变量的回收机制
垃圾回收机制是一种自动的内存管理机制,当一个变量在程序中不再被需要时,应该予以释放,这种内存资源管理称为垃圾回收。其中一种垃圾回收的方式是使用引用计数,通过对数据存储的物理空间多附加一个计数器空间,当其他数据与其相关时,计数器加一,反之,相关解除时计数器减一。定期检查各存储对象的计数器,计数器为0的话,则认为已经被抛弃而应将其所占物理空间回收。php7垃圾回收的实现方法是定期遍历和标记若干存储对象的数组,再通过算法将是垃圾的物理空间回收。
10.描述php代码的解释过程
在php7中,源代码首先进行词法分析,将源代码切割为多个字符串单元,分割后的字符串为token。而一个一个独立的token是无法表达完整语义的,需经过语法分析阶段,将token转化为抽象的语法树(简称AST)。之后,抽象语法树呗转换为机器执行指令执行。在php中,这些指令成为opcode,依次执行opcode。
phper必知必会(一)的更多相关文章
- 读书笔记汇总 - SQL必知必会(第4版)
本系列记录并分享学习SQL的过程,主要内容为SQL的基础概念及练习过程. 书目信息 中文名:<SQL必知必会(第4版)> 英文名:<Sams Teach Yourself SQL i ...
- 读书笔记--SQL必知必会--建立练习环境
书目信息 中文名:<SQL必知必会(第4版)> 英文名:<Sams Teach Yourself SQL in 10 Minutes - Fourth Edition> MyS ...
- 读书笔记--SQL必知必会12--联结表
12.1 联结 联结(join),利用SQL的SELECT在数据查询的执行中联结表. 12.1.1 关系表 关系数据库中,关系表的设计是把信息分解成多个表,一类数据一个表,各表通过某些共同的值互相关联 ...
- 读书笔记--SQL必知必会18--视图
读书笔记--SQL必知必会18--视图 18.1 视图 视图是虚拟的表,只包含使用时动态检索数据的查询. 也就是说作为视图,它不包含任何列和数据,包含的是一个查询. 18.1.1 为什么使用视图 重用 ...
- 《MySQL 必知必会》读书总结
这是 <MySQL 必知必会> 的读书总结.也是自己整理的常用操作的参考手册. 使用 MySQL 连接到 MySQL shell>mysql -u root -p Enter pas ...
- 《SQL必知必会》学习笔记(一)
这两天看了<SQL必知必会>第四版这本书,并照着书上做了不少实验,也对以前的概念有得新的认识,也发现以前自己有得地方理解错了.我采用的数据库是SQL Server2012.数据库中有一张比 ...
- SQL 必知必会
本文介绍基本的 SQL 语句,包括查询.过滤.排序.分组.联结.视图.插入数据.创建操纵表等.入门系列,不足颇多,望诸君指点. 注意本文某些例子只能在特定的DBMS中实现(有的已标明,有的未标明),不 ...
- .NET程序员项目开发必知必会—Dev环境中的集成测试用例执行时上下文环境检查(实战)
Microsoft.NET 解决方案,项目开发必知必会. 从这篇文章开始我将分享一系列我认为在实际工作中很有必要的一些.NET项目开发的核心技术点,所以我称为必知必会.尽管这一系列是使用.NET/C# ...
- 0005 《SQL必知必会》笔记01-SELECT语句
1.SELECT基本语句: SELECT 字段名1,···,字段名n FROM 表名 2.检索所有字段,用"*"替换字段名,这会导致效率低下 SELECT * FROM 表名; 3 ...
- 2015 前端[JS]工程师必知必会
2015 前端[JS]工程师必知必会 本文摘自:http://zhuanlan.zhihu.com/FrontendMagazine/20002850 ,因为好东东西暂时没看懂,所以暂时保留下来,供以 ...
随机推荐
- 管道pipe与dup结合使用
前面的例子中,子进程可以直接共享父进程的文件描述符.但是如果子进程调用exec函数执行另一个应用程序时,就不能再共享了. 这种情况下可以将子进程中的文件描述符重定向到标准输入,当新执行的程序从标准输入 ...
- flask(十)使用alembic,进行数据库结构管理,升级,加表,加项
1.安装扩展,在虚拟环境中安装 alembic,不懂可以去看pycharm的系列文章. 2.初始化, 使用 Alembic 前需要通过 alembic init 命令创建一个 alembic 项目,该 ...
- python笔记04:字典
4.1 字典的使用 字典:通过名字来引用值的数据结构,又称为映射 字典中的值并没有特殊的顺序,但是都存储在一个特定的键下 字典提供的功能:快速查找特定键值对应关系 某些情况下,字典比列表更好用一些 ...
- WLAN 802.11 a/b/g PHY Specification and EDVT Measurement V
Receive Minimum Input Level (Sensitivity) 测试方法: Receiver Adjacent Channel Rejection (ACR) -For IEEE8 ...
- kbmMW集成JWT
如果对JWT不熟悉,需要先补下功课:初步理解JWT并实践使用 然后找到开源项目:https://github.com/paolo-rossi/delphi-jose-jwt
- gradle仓库配置
Android Studio使用Gradle构建app.Gradle的使用非常灵活,其中可以设置使用多种类型的仓库,来获取应用中使用的库文件. 支持的类型有如下几种: 类型 说明 Maven cen ...
- 移动端js模拟截屏生成图片并下载功能的实现方案
一.根据PM需求如下: 移动端wap 实现将二维码生成图片下载至用户手机相册保存 二.根据现有思路: 1.使用第三方工具html2canvas,将页面中指定范围的dom转换为canvas 2.随后使用 ...
- FreeOpcUa compile
/********************************************************************************* * FreeOpcUa compi ...
- [Machine Learning & Algorithm] 随机森林(Random Forest)-转载
作者:Poll的笔记 博客出处:http://www.cnblogs.com/maybe2030/ 阅读目录 1 什么是随机森林? 2 随机森林的特点 3 随机森林的相关基础知识 4 随机森林的生成 ...
- Potplayer快捷键
potplayer 滞后快捷键: x potplayer 滞后快捷键: c Crtl+C:截图到剪切板 Crtl+E:截图到安装目录Capture