金山云 云原生后台面经(oc)
-
笔试 9.24
-
面试 9.29 35min
-
项目
-
说一下token
-
token分为三部分,头部,载荷,签证
-
header
-
声明类型
-
声明加密的算法
-
{ 'typ': 'JWT', 'alg': 'HS256' }
-
playload
-
标准中注册的声明
-
iss:jwt签发者
-
sub:jwt所面向的用户
-
aud:接收jwt的一方
-
exp:jwt的过期时间,这个过期时间必须要大于签发时间
-
nbf:定义在什么时间之前,该jwt都是不可用的.
-
iat:jwt的签发时间
-
jti:jwt的唯一身份标识,主要用来作为一次性token,从而回避重放攻击。
-
-
公共的声明
-
公共的声明可以添加任何的信息,一般添加用户的相关信息或其他业务需要的必要信息.但不建议添加敏感信息,因为该部分在客户端可解密
-
-
私有的声明
-
私有声明是提供者和消费者所共同定义的声明,一般不建议存放敏感信息,因为base64是对称解密的,意味着该部分信息可以归类为明文信息。
{ "sub": "1234567890", "name": "John Doe", "admin": true }
-
-
-
signature
-
header (base64后的)
-
payload (base64后的)
-
secret 服务端的私钥
-
编码过的header、编码过的payload、一个秘钥,中间使用"."进行连接,在使用header头中定义的签名算法进行加密
-
-
-
token如何生成
-
token的流转过程
-
token如何验证
-
-
go
-
如何创建变量
-
make和new的区别
-
如何处理异常
-
panic(),并且不再回到异常点
-
-
如何实现catch
-
recover,写在defer中,defer类似finally
-
-
-
Linux
-
常用的文本处理命令
-
ls -l 如何显示特定列
-
ls -l | awk '{ print $xx }' (xx为第几列,为0就全部显示)
-
ls -l | cut -d ' ' -f xx (xx为第几列 必须从1开始)
-
-
查看当前目录和所有子目录文件的大小
-
df -a
-
-
查看进程对应的程序的所在位置
-
top -c
-
ll /proc/<pid>
-
pid可以使用ps -ef (“-e”参数代表显示所有进程,“-f”参数代表全格式) 或 top查看
-
ps 查看瞬时信息,top 查看持续信息
-
-
-
查看内存使用情况
-
cat /proc/meminfo 了解Linux系统内存使用状况的主要接口,整体内存情况,最全面
-
top 各个进程的虚拟内存 物理内存使用情况
-
free -h 查看内存整体使用情况通过meminfo获取数据
-
df 查看磁盘使用情况
-
-
修改文件的命令
-
echo
-
export 修改环境变量 仅限本次登录
-
tee 交互写入
-
nano
-
vi
-
vim
-
-
-
计网
-
http请求包含哪些内容
-
常用的键值对
-
http现在使用哪个版本
-
-
数据库
-
乐观锁和悲观锁在mysql中对应什么
-
如何使用这两种锁
-
redis如何持久化
-
RDB支持以特定的实践间隔为数据集生成时间点快照;
-
AOF把Redis Server收到的每条写指令持久化到日志中,待Redis重启时通过重放命令恢复数据。日志格式为RESP协议,对日志文件只做append操作,无损坏风险。并且当AOF文件过大时可以自动重写压缩文件。
-
-
B+树说一下
-
Mysql常用的索引
-
-
编码考察
-
并发处理10个数 / 快排 二选一
-
-
面试官:“本来还有一个反问环节 但是今天时间有点超了 咱们就先跳过了 你去问下一个面试官吧”
-
-
二面 9.29 20min
-
实习的项目
-
golang的掌握程度
-
golang正在做的项目是什么
-
为什么做这个项目
-
算法题
-
很简单我懒得打上来了
-
-
都熟悉什么语言
- 以后从事哪个语言向的工作
- 可以提前来实习吗
-
反问
- 部门业务 - 目前是公司层面的招聘,具体的部门在入职时根据自己的情况填报意愿
-
-
oc 10.14
总结
一面linux问挺多的,二面技术问题偏少了,无hr面
#金山云##面试题目#