小鹏汽车2019春招互联网中心DevOps运维开发工程师笔试题

时长:120分钟 总分:100分

210浏览 1人已完成答题

题型介绍
题型 简答题
数量 5
1.
使用任意您熟悉的语言(C/C++、Java、Python或者其他),实现以...
问题详情

使用任意您熟悉的语言(C/C++JavaPython或者其他),实现以下功能:

在字符串中找出连续最长的递增英文字母串(26个英文字母,不区分大小写),把这个字母串的长度作为函数值返回。

如字符串“dgefgfg455cd556bcd45”,可以得出最长的连续递增字母是efg、bcd,所以返回3。
2.
运维工程师在工作中经常需要对数量众多的服务器进行批量管控操作,例如使用pu...
问题详情

运维工程师在工作中经常需要对数量众多的服务器进行批量管控操作,例如使用puppetansible等工具能达到对应目的。然而,如果不利用相关开源工具,请您使用shell或者python等编程语言,设计一个简单的批量管控工具。

已知条件:已经拥有一台管理机,通过它能免key SSH到各台工作机器。以及管理机IPA,其他工作机器IPBCDE等等

工具达到以下目的:

1、 利用一台管理机器,可以批量控制其他工作机器;

2、 在管理机器输入指定命令,在其他工作机器执行并返回结果;

3.
以下是一个日志文件,其文件名为log.txt, 其中可能包含N台服务器的(...
问题详情

以下是一个日志文件,其文件名为log.txt, 其中可能包含N台服务器的(例子中只写了2)服务器监控数据

监控指标包括CPU、内存、磁盘、网络流量使用率等,使用率取值范围用0~1之间的小数表示

数据每分钟采集一次, 每行日志的开头都是当前时间

具体格式如下: 时间 指标名 hostname=主机名 value=当前值

2019-04-04_00:00:01 cpu.used hostname=server-01
value=0.21
2019-04-04_00:00:01 mem.used hostname=server-02
value=0.3
2019-04-04_00:01:01 disk.used hostname=server-02
value=0.32
2019-04-04_00:01:01 net.used hostname=server-01
value=0.36
2019-04-04_00:02:01 mem.used hostname=server-01
value=0.56
2019-04-04_00:02:01 net.used hostname=server-02
value=0.2

机器空闲率的计算方法:

当机器同时满足(CPU <30% and (内存<40% and (磁盘<40% and (网络流量<30%)这几个条件的时间,占总时间的比例

请用任意您熟悉的编程语言,完成一个函数可通过给定日期,主机名获取主机当天的空闲率

例如: get_idle_ratio('server-02', '2019-04-04') 返回 0.21

 

 

 

4.
SQL编写优化 某网站访问日志已入库,日志表部分字段数据如下: ...
问题详情

SQL编写优化

某网站访问日志已入库,日志表部分字段数据如下:
796567eln.jpg

产品经理希望按天统计三类url(/a.html作为a类,/b.html作为b类,其它都算到x)

-- 的请求失败次数(status_code>=400), getpost方法请求次数,希望得到如下结果:

796567eln.jpg

-- 建表语句

drop table access_log
CREATE TABLE `access_log` (
 
`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键id',
 
`req_dt` date not null comment '请求日期',
 
`url` varchar(50) NOT NULL COMMENT 'URL',
 
`req_method` varchar(16) not null default '' comment '请求方法',
 
`status_code` int not null default 0 comment '状态码',
  ...
(省略20个字段)
 
PRIMARY KEY (`id`)
) ENGINE=InnoDB

请写出满足需求的SQL语句,如果你认为写出来的SQL有性能问题,如何优化?

5.
运维工程师对生产环境有极高的稳定性追求,为了避免单点机房故障,他们往往会建...
问题详情

运维工程师对生产环境有极高的稳定性追求,为了避免单点机房故障,他们往往会建设异地多中心的架构,为了应对故障随时在多城市、多数据中心调配流量。那么,您认为在实现异地多中心架构的过程中,运维工程师们会遇到怎样的技术难题以及其解决思路。