首页 > 后端开发 > php教程 > (PHP开发工程师)小弟我的面试之旅

(PHP开发工程师)小弟我的面试之旅

WBOY
发布: 2016-06-13 12:21:19
原创
932 人浏览过

(PHP开发工程师)我的面试之旅

一面大概有120道选择题20多道简答题(linux/网络 30道选择题  5道简答题   MYSQL 30道选择题 3道简答题  PHP 30道选择题 5道简答题  HTML 30道选择题 5道简答题),题目有一定的难度,不是基础题,1个半小时做完,但一面还是比较顺利就通过了,二面估计是over了(回去等通知)倒是关于大数据高并发如何处理没有提问(就这个准备的还行),下面是二面问的一些题目(有些题记不清了,没有写):

1、如何在同一小时内,但不是同一秒执行所有脚本?

    我的思路是:

    1、将所有的脚本执行命令放到同一个文件中

          如command.txt文件中一行一个命令

          ls

          netstart -lnt

          ps -aux | grep mysql

    2、编写一个shell脚本去执行这些命令,由于是同一小时内,所以command.txt中的命令行数不能超过3600行    

         command.sh

#!/bin/bashfile="command.txt"[ ! -f "$file" ] && echo "$file not found" && exit 0count=`cat $file | wc -l`[[ $count -gt 3600 ]] && echo "too much command which can not execute in one hour" && exit 0while read linedo    `echo $line`    sleep 1done <br>    3、制定定时计划<p>      crontab -e </p><p>      *   12    *    *    *    (bash command.sh)</p><p>      每天的12点定时执行此脚本</p><p> </p><p>  2、算法题目:用户在搜索引擎中输入一句话,如果些话中包含敏感词,则不向用户显示任何内容      </p><pre name="code" class="php"><?php $sensetive = array(&#39;法轮功&#39;, &#39;胡锦涛&#39;, &#39;江泽民&#39;);$str = $_POST[&#39;input&#39;];for($i=0; $i<count($sensetive); $i++){    if(strstr($str, $sensetive[$i])){        return true;    }}return false;
登录后复制
    此算法有个不足之处,当敏感词很多的话,循环次数太多,效率不高

    此题待讨论,欢迎网友提供更好的方法

  3、http协议,请求头和响应头参数有哪些?

      method

     header

     connection

    cache-control

    content-type

    user-agent

    cookie

    content

   content-length

  4、有一个日志表专门负责记录所有日志,每天的日志量大概有200W条,如何建表更好的利于查询日志?

    由于每天产生的日志量很大,所以我们可以考虑将此日志表按天进行水平分割,这样我们就可以方便的查询每天的日志记录,即使是每天对应一个表,数据量还是很大的,建议根据日志添加时间比如add_time建立索引,更方便的查询每天每个时间点的日志记录。

  5、简述一下你做过的项目

    面试官很有水平,可以根据你简述的项目,来进行提问,总会提一些你可能平时见过,但不太在意的一些东西,感觉回答的不够好。所以找工作前一定要把自己做过的项目仔仔细细的想一遍,把遇到的问题记录下来进行深入的研究下,特别是安全性方面,如何保证你做的东西安全性很强,哎……最后回去等消息,估计是没什么戏了

        

1楼zhanghongjie03025小时前
每次面试都是一次很好的经验!
相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板