***********
2024/05/15 远程面试 (base 西安
自我介绍就是生平经历。
### 手撕算法(腾讯会议文档手撕)
字符串匹配:给出一个正则 pattern,一个字符串,返回是否匹配。
前置知识拷打:
1. 是不是知道字符串 [] 什么意思。表示序列集合。
2. 是不是知道 + 号什么意思。表示连续匹配一次或者多次。
> pattern: "a[e-g]+"
>
> string: m
```go
func is(pattern, m string) bool {
// your code
}
```
力扣 hard:**********************************************************************
## 面试题
> **没有八股!没有八股!没有八股!**重要的事情说三遍!
### 1. APISIX Ingress Controller 怎么配置的
> 不会,没用过
### 2. APISIX Limt-rate 限流插件原理
> 唯一算得上是八股的问题:
>
> 1. 滑动窗口限流算法
> 2. 固定窗口限流算法
### 3. Dockerfile 中 COPY 和 AND 命令区别
> 回答了 1 个,AND 可以解压;
>
> 还有 AND 可以添加远程 URL 资源
### 4. Dockerfile entrypoint 和 cmd 区别
> 不知道,胡说的。
>
> 标准答案:Entrypoint 是指定容器启动时要执行的默认命令,它在运行容器时不能被覆盖。而 Cmd 是指定容器启动时要执行的默认命令参数,它可以被覆盖。通常情况下,Entrypoint 用于指定容器启动时要运行的应用程序,而 Cmd 用于指定应用程序的默认参数。
### 5. 用过 k8s 吗,用过。说下 ConfigMap 是怎么应用到 pod 里的?
> 1. 通过 yml 命令配置:
>
> ```yml
> spec:
> env:
> - name: SPECIAL_LEVEL_KEY # 定义环境变量的名称
> valueFrom: # 环境变量 SPECIAL_LEVEL_KEY 的取值
> configMapKeyRef:
> name: config-1 # 环境变量的值取自于 config-1 ConfigMap
> key: special.how # key 为 special.how
> ```
>
> 2. volume 卷挂载
>
> 回答了第一个。
## 反问
### 1. 业务线是做什么的
> 可观测,告警,日志收集等。主要用 go 语言。
### 2. 面试表现如何
> 我们会根据面试表现综合评分。
### 3. 后续流程
> 如果通过 1, 2 周之内会再次联系。
## 结束!