技术文章 > PHP >  PHP教程 > 正文

php中有哪些中级面试题

小妮浅浅

我们学会了编程的相关知识后,不论是哪一种类型的,最后都需要进行一些测试检验学习成果。这里也不得不提到一个沉重的话题,每个程序员必经的阶段就是面试及准备。对于中级程序员来说,面试题的基础考察部分不会以提问的形式展开,需要结合其他模块的知识点一起运用,同时对具体数据库使用的细节进行剖析。下面我们一起看看相关题型。

1.如何设计或配置Mysql,才能达到高效使用的目的。

1)数据库设计方面,设计结构良好的数据库,允许部分数据冗余。 选取最适用的字段属性,尽可能把字段设置为NOTNULL,这样在查询的时候,数据库不用去比较NULL值。

2)系统架构设计方面,表散列,把海量数据散列到几个不同的表里面,集群,数据库查询和写入分开。 写高效sql语句,以提高效率。使用连接(join)来代替子查询使用联合(union)来代替手动创建的临时表所得皆必须,只从数据库取必须的数据。必要的时候用不同的存储引擎,比如Innodb可以减少死锁,HEAP可以提高一个数量级的查询速度。

2.SESSION 保存在服务器的哪里?

通过php.ini指定,可存在指定目录的文件中或内存中,或数据库中!

(存储在服务器上的php指定的目录中的(session.save_path)的位置进行的存放)

3.一次完整的HTTP请求所经历的步骤

1)对www.baidu.com这个网址进行DNS域名解析,得到对应的IP地址

2)根据这个IP,找到对应的服务器,发起TCP的三次握手

3)建立TCP连接后发起HTTP请求

4)服务器响应HTTP请求,浏览器得到html代码

5)浏览器解析html代码,并请求html代码中的资源(如js、css图片等)(先得到html代码,才能去找这些资源)

6)浏览器对页面进行渲染呈现给用户

4.redis的五大数据类型的使用场景

1)string 存储字符串,场景是简单缓存

2)list 队列,场景是模拟队列,秒杀,点赞,回复等有一些先后顺序的

3)set 无序的唯一列表,场景:抽奖,去重,好友圈,共同好友之类的

4)SortedSet有序的场景:排行榜,各种热度排行

5)hash

5.redis是单线程的吗,可以多线程吗

优点:

(1)绝大部分请求是纯粹的内存操作(非常快速)

(2)采用单线程,避免了不必要的上下文切换和竞争条件

(3)非阻塞IO - IO多路复用(select,poll,epoll)

(4)高效的数据结构

5)value大小:redis最大可以达到1GB,而memcache只有1MB

以上就是php中级面试题的部分展示,相对基础面试题而言,大家已经感受到题目难度的提升。大家对于其中不懂的地方,可以对照参考答案或者课后找寻资料解决。更多php学习指路:php教程

免费视频教程
本教程部分素材来源于网络,版权问题联系站长!
相关文章
  php asort函数的使用
  php命名空间的基本介绍
  php中命名空间的引入方法
  php lavarel框架导出文件
  PHP之CakePHP的安装
  php定义常量数组有几种方式
  php中ksort()函数是什么
  php switch语句的使用
  php之Symfony框架设置路由
  php foreach循环是什么
  php中foreach遍历数组的两种方式
相关视频章节
  os & sys 模块使用
  包的使用
  第三方开源模块的安装&使用
  自定义模块
  模块介绍和调用方式
作者信息

小妮浅浅

认证0级讲师

最近文章
python数据分析是什么 245
python中的int是什么意思 566
python开发环境是什么 501
推荐视频
视频教程分类