网易雷火运维面试全纪录

电话一面

  1. 都搞过什么linux的发行版,区别是啥?

  2. 为什么云服务器普遍不装swap?

    1
    小内存主机由于内存不足导致持续swapping后会严重影响存储设备的IO性能。其实如果需要使用swap的话,主机性能也已经是烂的一塌糊涂,根本不能满足使用了,建议增加内存为上。
  3. localhost与127.0.0.1的区别

    1
    localhost(local)是不经网卡传输!这点很重要,它不受网络防火墙和网卡相关的的限制。127.0.0.1是通过网卡传输,依赖网卡,并受到网络防火墙和网卡相关的限制。
  4. iptables的四表五链是啥?

  5. 出现延迟都有原因?

  6. 如何把数据库恢复到指定时刻?

  7. 你从业以来参与的比较大的故障是什么?怎么解决的?

  8. 如果要大量insert数据到数据库,有什么优化的方法?

    1
    2
    3
    4
    5
    1)一条SQL语句插入多条数据:比如一次insert插入多个values,INSERT INTO `insert_table` (`datetime`, `uid`, `content`, `type`) VALUES ('0', 'userid_0', 'content_0', 0), ('1', 'userid_1', 'content_1', 1);
    这样的好处是减少binlog和innodb的日质量,降低了日志刷盘的频率提高效率,同时减少了网络传输的IO,这个优化效果特别明显;
    2)把多一个insert写成一个事务,进行一个insert操作时,MySQL内部会建立一个事务,在事务内才进行真正插入处理操作。通过使用事务可以减少创建事务的消耗,所有插入都在执行后才进行提交操作;
    3)数据按照主键有序插入,因为数据库插入时,需要维护索引数据,无序的记录会增大维护索引的成本,不过这个方法提高的并不明显;
    4)以上方法综合使用;

电话二面

  1. 介绍一下你自己

  2. 使用docker遇到了什么坑?

  3. docker的网络模式有哪些?为什么不能选hosts?

  4. 服务器调整进程优先级的命令是啥?

    1
    2
    3
    4
    5
    6
    7
    8
    9
    一般来说微服务(即一个云服务器只跑一个进程)的场景来说,这个问题很少遇到,但是实际很多公司是一个服务器(比如80160G)跑多个进程,那么对后台的程序有优先级限制就要使用`nice`命令。
    Linux系统中,进程有-191939个优先级。-19最优先,19最不优先。进程的默认优先级为0。如果希望将进程调整为最优先,则将进程的nice值设置为-19;如果希望进程最不优先,占用最少的系统CPU时间,则将其设置为19

    修改已经存在的进程的优先级
    将PID为1799的进程优先级设置为最低(19):renice 19 1799
    将PID为1799的进程优先级设置为最高(-19):renice -19 1799

    新建进程并设置优先级
    nice -19 tar zcf pack.tar.gz documents #这里-19并不是最高优先级,而是最低优先级,要设定最高优先级是--19
  5. python的==和is有什么不同?

    1
    is比较的是id是不是一样,==比较的是值是不是一样。
  6. 如何删除某文件下所有名称带有空格的文件?

    1
    2
    可以通过转义符,或者获取文件的inode,根据inode删除对应的文件:find -inum 编号 -delete
    比如想rm文件名为“my file”的文件可以用rm my\ file
  7. ansibleplaybook的回滚方法?

  8. 如果nginx的server设置了add header,同时子location也设置了add header,那么会有什么现象?

  9. 如何判断查询是否用到了索引?

    1
    2
    使用explain,如果type类型是all就是没有用到索引,如果是其他具体类型就是用到了索引。
    索引依次从好到差:system,const,eq_ref,ref,fulltext,ref_or_null,unique_subquery,index_subquery,range,index_merge,index,ALL,除了all之外,其他的type都可以使用到索引,除了index_merge之外,其他的type只可以用到一个索引。

现场技术一面

  1. 写一下Python序列循环移位的方法,原来是[1,2,3,4,5,6],变成[3,4,5,6,1,2],任意语言都可以。

    1
    2
    3
    4
    使用切片,简单易理解,速度最快,可同时实现循环左移(k>0)和右移(k<0)。

    def demo(lst, k):
    return lst[k:] + lst[:k]
  2. 你们平时备份mysql使用什么方法?为什么用这个开源软件?

  3. 服务器你们是如何初始化的?

  4. 简单的介绍一下python的生成器?

  5. 如果发现慢sql你怎么排查?

  6. 发现java服务出现了CPU飙升的现象,怎么排查?

  7. 除了代码问题之外,都有哪些情况会导致CPU 100%?

  8. 都做过什么优化?(主动运维方向)

剩下的就是一些流程性的问题了。
akb48

感谢您请我喝咖啡~O(∩_∩)O,如果要联系请直接发我邮箱chenx1242@163.com,我会回复你的
-------------本文结束感谢您的阅读-------------