杭州税友 | 系统运维实习生

杭州税友 | 系统运维实习生

一面时间

2023-6-25 17:00 - 17:30 30min

面试内容

在教室面试,然后来了一个老爷爷要教我数学,打断了一下面试,有点尴尬:joy:

总览

  • Golang 值类型和引用类型的区别,分别有哪些数据结构?
  • 有没有使用过协程的经验?选品库是爬虫还是有提供接口?
  • channel用的多吗?
  • 有没有了解用 Golang 开发一些 k8s 小插件,做一些拓展,一些开源项目?
  • 在操作系统安装指定 Docker 版本的过程?
  • 博客通过 Docker 是怎么发布的?整个流程
  • 简单说一下 Docker-compose 文件的一些关键词的含义和用法?
  • 除了 Docker 你还知道哪些容器产品?
  • CPU 使用率比较高?怎么排查哪个应用占用高?
  • 查看磁盘,网络IO的使用情况?哪个进程占用的网络IO比较多?
  • 监控 Mysql 主从状态是否良好,怎么做监控脚本,或者用什么工具实现?
  • 查看 Mysql 的主从状态是什么指令?
  • 单击 Mysql 执行sql指令,性能比较差,怎么排查?
  • 有什么需要提问?先说一下岗位描述

详细

  • Golang 值类型和引用类型的区别,分别有哪些数据结构?

    值类型在赋值和传参的时候会进行值拷贝,创建一个新变量,意味着对新变量的修改不会影响原变量的值。包括基本类型(int,float),字符串,数组, 结构体
    引用类型在赋值和参数的时候共享相同的底层数据,意味着对变量修改会影响原始变量的值。包括切片,map,channel,接口,函数
    
  • 有没有使用过协程的经验?选品库是爬虫还是有提供接口?

    两个方面
    1、分布式存储项目:数据节点使用协程做心跳检测,接口节点使用协程清除没有心跳的数据节点
    	数据节点启动使用协程加载数据到内存 ---> Redis优化
    	数据节点使用协程处理接口节点的定位消息
    2、实习:拉取商品数据,多个协程并发拉取几个平台 ----> 并发控制
    
  • channel用的多吗?

    1、实习使用channel做 并发控制
    2、项目通过 channel 做消息队列,实现心跳检测和定位消息
    
  • 有没有了解用 Golang 开发一些 k8s 小插件,做一些拓展,一些开源项目?

    没有了解过。可以去了解了解
    网络,存储
    
  • 在操作系统安装指定 Docker 版本的过程?

    更新包管理器-->安装依赖源 使用https源-->添加官方 GPG 密钥-->设置 Docker 的稳定版存储库-->更新包管理器
    安装指定版本的 Docker。使用 =<VERSION> 指定所需的版本号-->验证 Docker 安装:
    
  • 博客通过 Docker 是怎么发布的?整个流程

    1、编写 Dockerfile 文件,包括基础镜像,依赖,环境变量
    2、构建 Docker 镜像。docker build -t name:version
    3、运行容器,映射暴露端口
    4、云服务器设置防火墙,放行端口。通过 ip:port 访问
    
  • 简单说一下 Docker-Compose 文件的一些关键词的含义和用法?

    version:	版本
    service:	服务,每个服务包含一个名称和相关配置
    image:	镜像						port:	端口映射
    environment:	环境变量		depend_on:	依赖关系	
    restart:	重启策略			network:	网络	
    volume:	数据卷
    
  • 除了 Docker 你还知道哪些容器产品?

    Podman 由 RedHat 开发,是一种无守护程序、开源、Linux 原生容器引擎,被认为是 Docker 的最佳替代品之一。
    containerd 是一个高级容器运行时,它通过在底层运行 runc 以提供操作系统和容器引擎之间的接口
    LXD 是一种轻量级的虚拟化解决方案,使得多个独立的Linux操作系统实例在同一物理机上运行
    
  • CPU 使用率比较高?怎么排查哪个应用占用高?

    通过 top 指令来排查
    
  • 查看磁盘,网络IO的使用情况?哪个进程占用的网络IO比较多?

    可以使用 iotop 查看磁盘io的实时使用情况
    通过 iftop 查看网络io
    
  • 监控 Mysql 主从状态是否良好,怎么做监控脚本,或者用什么工具实现?

    监控脚本:使用bash或者Python编写,通过执行 show slave status 命令的输出,检查复制延迟和复制状态等指标,异常发送警报
    监控工具:Prometheus + Grafana, 使用 Prometheus 作为监控系统,通过配置 MySQL Exporter 收集 MySQL 的指标数据,并使用 Grafana 进行数据展示和告警设置。
    
  • 查看 Mysql 的主从状态是什么指令?

    show slave status
    1、Slave_IO_Running:指示复制 I/O 进程是否正在运行。如果值为 "Yes",表示正常运行。
    2、Slave_SQL_Running:指示复制 SQL 进程是否正在运行。如果值为 "Yes",表示正常运行。
    3、Seconds_Behind_Master:表示从服务器与主服务器之间的复制延迟(以秒为单位)。较小的延迟表示较好的主从同步。
    
  • 单机 Mysql 执行sql指令,性能比较差,怎么排查?

    检查服务器性能指标-->检查Mysql的参数-->检查查询执行计划
    使用性能分析工具:
    使用 MySQL 提供的性能分析工具,如 SHOW PROCESSLIST、SHOW ENGINE INNODB STATUS、SHOW GLOBAL STATUS 等,以获取系统和查询的性能指标。 processlist,engine innodb status,global 
    
  • 有什么需要提问?先说一下岗位描述

    业务+技术栈+部门运维岗人数
    

杭州税友 | 系统运维实习生

一面时间

2023-6-25 17:00 - 17:30 30min

面试内容

在教室面试,然后来了一个老爷爷要教我数学,打断了一下面试,有点尴尬:joy:

总览

  • Golang 值类型和引用类型的区别,分别有哪些数据结构?
  • 有没有使用过协程的经验?选品库是爬虫还是有提供接口?
  • channel用的多吗?
  • 有没有了解用 Golang 开发一些 k8s 小插件,做一些拓展,一些开源项目?
  • 在操作系统安装指定 Docker 版本的过程?
  • 博客通过 Docker 是怎么发布的?整个流程
  • 简单说一下 Docker-compose 文件的一些关键词的含义和用法?
  • 除了 Docker 你还知道哪些容器产品?
  • CPU 使用率比较高?怎么排查哪个应用占用高?
  • 查看磁盘,网络IO的使用情况?哪个进程占用的网络IO比较多?
  • 监控 Mysql 主从状态是否良好,怎么做监控脚本,或者用什么工具实现?
  • 查看 Mysql 的主从状态是什么指令?
  • 单击 Mysql 执行sql指令,性能比较差,怎么排查?
  • 有什么需要提问?先说一下岗位描述

详细

  • Golang 值类型和引用类型的区别,分别有哪些数据结构?

    值类型在赋值和传参的时候会进行值拷贝,创建一个新变量,意味着对新变量的修改不会影响原变量的值。包括基本类型(int,float),字符串,数组, 结构体
    引用类型在赋值和参数的时候共享相同的底层数据,意味着对变量修改会影响原始变量的值。包括切片,map,channel,接口,函数
    
  • 有没有使用过协程的经验?选品库是爬虫还是有提供接口?

    两个方面
    1、分布式存储项目:数据节点使用协程做心跳检测,接口节点使用协程清除没有心跳的数据节点
    	数据节点启动使用协程加载数据到内存 ---> Redis优化
    	数据节点使用协程处理接口节点的定位消息
    2、实习:拉取商品数据,多个协程并发拉取几个平台 ----> 并发控制
    
  • channel用的多吗?

    1、实习使用channel做 并发控制
    2、项目通过 channel 做消息队列,实现心跳检测和定位消息
    
  • 有没有了解用 Golang 开发一些 k8s 小插件,做一些拓展,一些开源项目?

    没有了解过。可以去了解了解
    网络,存储
    
  • 在操作系统安装指定 Docker 版本的过程?

    更新包管理器-->安装依赖源 使用https源-->添加官方 GPG 密钥-->设置 Docker 的稳定版存储库-->更新包管理器
    安装指定版本的 Docker。使用 =<VERSION> 指定所需的版本号-->验证 Docker 安装:
    
  • 博客通过 Docker 是怎么发布的?整个流程

    1、编写 Dockerfile 文件,包括基础镜像,依赖,环境变量
    2、构建 Docker 镜像。docker build -t name:version
    3、运行容器,映射暴露端口
    4、云服务器设置防火墙,放行端口。通过 ip:port 访问
    
  • 简单说一下 Docker-Compose 文件的一些关键词的含义和用法?

    version:	版本
    service:	服务,每个服务包含一个名称和相关配置
    image:	镜像						port:	端口映射
    environment:	环境变量		depend_on:	依赖关系	
    restart:	重启策略			network:	网络	
    volume:	数据卷
    
  • 除了 Docker 你还知道哪些容器产品?

    Podman 由 RedHat 开发,是一种无守护程序、开源、Linux 原生容器引擎,被认为是 Docker 的最佳替代品之一。
    containerd 是一个高级容器运行时,它通过在底层运行 runc 以提供操作系统和容器引擎之间的接口
    LXD 是一种轻量级的虚拟化解决方案,使得多个独立的Linux操作系统实例在同一物理机上运行
    
  • CPU 使用率比较高?怎么排查哪个应用占用高?

    通过 top 指令来排查
    
  • 查看磁盘,网络IO的使用情况?哪个进程占用的网络IO比较多?

    可以使用 iotop 查看磁盘io的实时使用情况
    通过 iftop 查看网络io
    
  • 监控 Mysql 主从状态是否良好,怎么做监控脚本,或者用什么工具实现?

    监控脚本:使用bash或者Python编写,通过执行 show slave status 命令的输出,检查复制延迟和复制状态等指标,异常发送警报
    监控工具:Prometheus + Grafana, 使用 Prometheus 作为监控系统,通过配置 MySQL Exporter 收集 MySQL 的指标数据,并使用 Grafana 进行数据展示和告警设置。
    
  • 查看 Mysql 的主从状态是什么指令?

    show slave status
    1、Slave_IO_Running:指示复制 I/O 进程是否正在运行。如果值为 "Yes",表示正常运行。
    2、Slave_SQL_Running:指示复制 SQL 进程是否正在运行。如果值为 "Yes",表示正常运行。
    3、Seconds_Behind_Master:表示从服务器与主服务器之间的复制延迟(以秒为单位)。较小的延迟表示较好的主从同步。
    
  • 单机 Mysql 执行sql指令,性能比较差,怎么排查?

    检查服务器性能指标-->检查Mysql的参数-->检查查询执行计划
    使用性能分析工具:
    使用 MySQL 提供的性能分析工具,如 SHOW PROCESSLIST、SHOW ENGINE INNODB STATUS、SHOW GLOBAL STATUS 等,以获取系统和查询的性能指标。 processlist,engine innodb status,global 
    
  • 有什么需要提问?先说一下岗位描述

    业务+技术栈+部门运维岗人数
    

面试录了音,所以很详细。欢迎大佬们指教!

面试总结

这算是第一次面试运维岗位吧,自己是 学习 Golang的,面试之前也没有准备,没报什么希望,意料之外的面试机会吧,没想到最后还拿到offer了,这就是意外中的意外了。

面试结果

6.27 二面

我的博客:https://robking.top

#税友##晒一晒我的offer#
全部评论
orz
点赞 回复 分享
发布于 2023-07-03 15:32 浙江

相关推荐

11-15 20:44
中北大学 Python
自我介绍现在大三&nbsp;学校让实习嘛&nbsp;最早什么时候到岗&nbsp;&nbsp;1.&nbsp;&nbsp;讲一讲你的项目&nbsp;和我们业务相契合的地方算法工程方面的-&nbsp;讲了之前部署的mutualAI社区的事情&nbsp;还有在strikingly的业务-&nbsp;ollama3&nbsp;通译7b&nbsp;2.&nbsp;之前处理的数据都是文本数据&nbsp;有处理过类似pdf这样的文件嘛之前处理的确实是文本数据&nbsp;后面也用过Python的解析库&nbsp;但是时间有点长&nbsp;具体讲不明白了3.&nbsp;&nbsp;Agent框架&nbsp;&nbsp;&nbsp;用过魔搭社区的4.&nbsp;Python的后端框架都用过那几个&nbsp;&nbsp;&nbsp;FastAPI&nbsp;Flask&nbsp;Django都用过5.&nbsp;用没用过FastAPI的后台管理框架&nbsp;和权限管理的框架?-&nbsp;没有了解过&nbsp;之前都是用的Django的6.&nbsp;爬虫框架你用过嘛-&nbsp;没用过框架&nbsp;感觉他们的东西有点重-&nbsp;用过requests框架&nbsp;Aiohttp这样的框架&nbsp;7.&nbsp;Nginx配置跨域&nbsp;-&nbsp;这个好久没做忘了8.&nbsp;&nbsp;Docker&nbsp;和&nbsp;K8s用过嘛-&nbsp;用过docker&nbsp;没用k8s9.&nbsp;&nbsp;MySQL优化&nbsp;怎么优化Mysql-&nbsp;应该是加索引&nbsp;&nbsp;redis缓存&nbsp;本地缓存&nbsp;联合索引&nbsp;MySQL的八股需要看一下10.&nbsp;会构建&nbsp;数据表嘛-&nbsp;这个应该是阿里和三范式那一套&nbsp;记不清楚了(好久没建表了)11.&nbsp;对我们有什么疑问嘛&nbsp;-&nbsp;​问了具体干一些什么事情&nbsp;听着好像tmd运维&nbsp;后端&nbsp;算法全要干&nbsp;好黑奴12.&nbsp;机器学习&nbsp;深度学习了解多少​会一点逻辑回归&nbsp;支持向量机&nbsp;随机森林这样的&nbsp;​深度学习会CNN&nbsp;RNN这样的13.&nbsp;CICD了解过吗&nbsp;&nbsp;&nbsp;没做过工程应用&nbsp;之前&nbsp;配置了一下&nbsp;后面交给另一个人了&nbsp;用gitlab&nbsp;没有机会学习
查看13道真题和解析
点赞 评论 收藏
分享
1.springsecurity是怎么搭建的我这边搭建的是springsecurity6,搭建分为两大块,一个是登录接口,一个是securityfilterchain的搭建,登录接口会springsecurity的方法创建一个将用户输入的用户名和密码作为参数的令牌,springsecurity那边会写一个impl来继承userdetailservice的方法,这里面会查询数据库的用户信息并且返回一个userdetails对象,springsecurity底层会有方法将userdetail的password和用户输入的密码进行对比,成功则返回一个token2.怎么实现单设备登录这边说的是登录的token存入redis,判断有没有有的话就删除并通知下线(网上查询是根据token一致性来判断,就是每次请求访问都会判断客户端发送的token和缓存的token是否一致)3.http1和2的区别http1相对于0多了Keepalive长连接,不用每次请求都要三次握手和四次挥手,但是有个弊端就是发送的报文必须是有序的,就存在一个问题,如果头报文过大就会发送阻塞,影响后面报文的发送。但是http2采用多路复用以及压缩报文的方式解决了这个问题,他讲报文压缩成二进制帧,且多路复用使得单个tcp链接能够多条路发送数据,就避免了头阻塞4.说一下jvm的垃圾回收这种问题就恶心啊,我不知道要讲什么,就说找垃圾的方法,应用计数法,可达性分析,然后垃圾回收算法又有四个,讲的口干舌燥的5.mysql的索引是什么,有什么索引索引是一种加快数据库查询效率的一种数据结构索引的类型:主键,唯一,常规,全文反问这边用什么技术栈说用的是golang,我就说怎么没问java的基础东西,一个实习把我拷打🐴了
求求给个offer吧😭😨😥:对了,说一下我被挂多年的经验吧,有些问题可能就几句话结束了,比如什么redis一般做什么的,mysql缓存分类啊,但是如果问到了一些可能要回答一两分钟的东西,一定要捋清楚逻辑,一点一点的回答,然后慢慢讲,别急,急了你就说了一堆重复的东西,我自己看着我的回答都觉得***,问题基本上都知道,但是长回答就说的很乱,然后自己写面经的时候就觉得,不就这么点东西,为什么回答那么乱
查看5道真题和解析
点赞 评论 收藏
分享
评论
17
51
分享
牛客网
牛客企业服务