美团点评春招笔试真题:运维工程师

1、数据库索引可以明显提高哪一操作的效率?
正确答案: A

A SELECT
B INSERT INTO … VALUES …
C UPDATE
D DELETE

2、数据库:以下哪种锁定方式能提供最佳的并行访问性能?
正确答案: D

A 列锁定
B 表锁定
C 块锁定
D 行锁定

3、从 DELETE 语句中省略 WHERE 子句,将产生什么结果?
正确答案: B

A DELETE 语句将失败因为没有记录可删除
B DELETE 语句将从表中删除所有的记录
C DELETE 语句将提示用户进入删除的标准
D DELETE 语句将失败,因为语法错误

4、raceroute 一般使用的是哪种网络层协议?
正确答案: D

A vrrp
B udp
C arp
D icmp

5、ospf 协议中哪种 lsa 只能在本区域内传播?
正确答案: A

A 2
B 3
C 5
D 7

6、在 linux 系统中,下列哪些信号无法捕获?
正确答案: B

A SIGHUP
B SIGKILL
C SIGQUIT
D SIGUSR1

7、Linux 下,如何查看一个端口被什么进程占用?
正确答案: B

A netstat -an|grep 端口号
B netstat -tnlp | grep 端口号
C iostat -an | grep 端口号
D iostat -dxt | grep 端口号

8、列表如何去掉重复元素?
正确答案: B

A 列表无法去重
B 先把 list 转换为一个去重的集合,然后在 list 化
C 先把 list 转换为一个去重的元组,然后在 list 化
D 列表不会有重复

9、Python 的列表 (List) 和元组 (Tuple) 区别是什么?
正确答案: A

A 列表可变,元组不可变
B 没有区别
C 限度限制不一样
D 列表可以被迭代,元组无法迭代

10、关于 Python 类的继承正确的说法是?
正确答案: C

A python 类无法继承
B 可以继承但是,无法执行父类的构建函数
C 可以有多个父类
D 只能有一个父类

11、以下关于端口的描述哪些是正确的?
正确答案: A B C D

A FTP 使用 TCP 20 端口
B FTP 使用 TCP 21 端口
C DNS 使用 TCP 53 端口
D DNS 使用 UDP 53 端口

12、下面关于 http 协议中的 GET 和 POST 方式的区别,哪些是错误的?
正确答案: A C

A 他们都可以被收藏,以及缓存
B GET 请求参数放在 URL 中
C GET 只用于查询请求,不能用于请求数据
D GET 不应该处理敏感数据的请求

13、一个简单的网站可能由这三部分组成:一个 web 服务器(提供网页和 http 服务),一个后台服务器(比如 java 后台程序,负责计算),一个 mysql 数据库服务器(存储用户数据)。然而我们知道,这样一个网站也是很脆弱的,上述三个服务器的任何一个出现问题(服务器问题,或者服务器的网络问题,或者上面运行的程序问题),都会导致网站访问不了。显然这样是无法符合美团大众点评给用户的服务承诺的。现在,假定你是公司的技术经理,你认为你会针对上述 3 个部分,做一些什么样的加强或改善工作,以帮助提高网站的可用性呢?(尽可能多的列举)

14、从哪几个方面评价一个 hash 函数的好坏?列举几种常见的 hash 函数?
** 参考答案:**hash 函数好坏的评判标准 1. 高效,节省 cpu,才能提高并发,作为中间层,需要高效的根据 key 来计算 hash 2. 冲突尽可能的小,小到可以建立唯一索引 3. 尽可能的节省空间。例如,要把这个结果存储到数据库中,在给这个 hash 后的结果建立索引,那么我们希望这个列越小越好,以便节省数据存储空间。特别是数据库中建立索引的时候,被索引的字段自然是越小越好 4. 要均匀,特别是有多个节点的时候,保证每个 key 分布的均匀,比较重要,否则负载没法均衡 5.rehash 的时候,保证 key 的重新分布尽可能的小,避免给后端带来较大的冲击 常见 hash 函数 比如,md5,sha-1,crc16,crc32 等

1、数据库:以下哪项不是 HASH 索引的特征?
正确答案: C

A MySQL 不能确定在两个值之间大约有多少行
B 不能使用 hash 索引来加速 ORDER BY 操作
C 只用于使用“>”或“<”操作符的比较
D 只能使用整个关键字来搜索一行

2、用户 JANKO 想在有三个列: empid, lastname, 和 salary. 的 employee 表中插入一行,该用户想输入数据 empid 59694, lastname Harris, 但没有 salary. 哪一个语句最适合这项工作?
正确答案: A

A INSERT INTO employee VALUES(59694,’harris’, null)
B INSERT INTO employee VALUES(59694,’harris’)
C INSERT INTO employee (empid, lastname, salary) VALUES(59694,’harris’)
D INSERT INTO employee (SELECT 59694 FROM ‘harris’)

3、数据库:以下哪项是在视图上不能进行的操作?
正确答案: C

A 更新视图
B 查询视图
C 在视图上定义新的表
D 在视图上定义新的视图

4、以下哪项不是 DNS 记录类型?
正确答案: C

A AAAA
B TXT
C TTL
D PTR

5、在 linux 环境下,查看日志文件的最后 100 行数据的正确方式是?
正确答案: D

A mv -100 a.log
B grep -100 a.log
C cat -100 a.log
D tail -100 a.log

6、假设用 4 个同样大小的硬盘来做 RAID,以下哪种 raid 模式获得的可用磁盘空间最少?
正确答案: B

A no-raid
B raid5
C raid1
D raid6

7、关于 linux 文件系统软连接和硬连接的区别,如下哪条是错误的?
正确答案: A

A 硬连接指通过文件复制来进行连接, 类似文件别名。
B 硬连接的作用是允许一个文件拥有多个有效路径名,删除源文件不影响硬连接
C 软连接又被称为符号连接,类似于快捷方程式
D 软连接包含另一文件的位置信息,删除源文件软件连也无法访问了

8、下面关于网络七层和四层的描述,哪条是错误的?
正确答案: A

A SNMP 工作在四层
B 四层是指网络的传输层,主要包括 IP 和端口信息
C 七层是指网络的应用层 (协议层),比如 http 协议就工作在七层
D 四层主要应用于 TCP 和 UDP 的代理,七层主要应用于 HTTP 等协议的代理

9、以下代码输出什么?
list = [‘a’, ‘b’, ‘c’, ‘d’, ‘e’]
print list[10:]
正确答案: A

A [ ]
B 程序异常
C [‘a’, ‘b’, ‘c’, ‘d’, ‘e’]
D 输出空

10、Python 语言什么那些类型的数据才能作为字典的 key?
正确答案: D

A 没有限制
B 字母,数字,下划线
C 字母
D 可被 hash 的的类型

11、以下哪些是常见的 TCP Flags?
正确答案: A B C D

A SYN
B RST
C ACK
D URG

12、Linux 操作系统具备以下哪些特性?
正确答案: A B C

A Multi User
B Multi Tasking
C Multi Process
D None of the above

13、编写 shell 脚本,能够生成 32 位随机密码
一种可能的方法:cat /dev/urandom | head -1 | md5sum | head -c 32

14、假设你是一个小型网站的管理员。周末的时候,你在自己家里发现网站打不开了,请问你能做哪些操作或方法,来确定是什么问题?
参考答案:1. 用自己的电脑访问百度网站,以检查是否自己电脑问题; 2. 联系自己朋友,看看其他人能否打开网站; 3. 使用 ping 命令 ping 网站服务器地址,检查服务器是否正常; 4. 登陆服务器,使用 netstat 命令检查 80 端口是否打开; 5. 登陆服务器,使用 ps 命令检查 http 进程是否存在; 6. 登陆服务器,检查网站日志; (不需要答完整,可用根据回答的方法个数来给分)