昨天经历了一场非常失败的面试。分享三道题目,我不知道怎么回答的。
我就往视图 view 里面插入数据怎么做?
这道题其实只隐隐约约记得视图可以修改方面,但是有很多约束条件。主要是考虑到完整性方面。大表(千万级别以上)使用索引的坏处
就要用 UDP 做 TCP 协议怎么弄?
感觉问题都是反着问的。
1
mahone3297 2017-06-30 17:26:51 +08:00 1
* 索引坏处就是插入,删除 慢。。。占空间。。。
* udp 做 tcp。。。你把 tcp 的 3 次握手协议实现,就是了吧。。。我理解的对么? |
2
mortonnex 2017-06-30 17:30:54 +08:00 1
1.不了解
2.索引会很大,占用磁盘 3.自己定义报文结构,加上序列号,设置滑动窗口和拥塞窗口的大小, 计算平均 RTT 时间,来决定重传超时时间 |
3
UnitTest 2017-06-30 17:33:17 +08:00 1
楼主面试啥岗位?
|
4
timwei 2017-06-30 17:38:05 +08:00 1
>>2
先假设是説 MySQL Index 是个二元树,每次表增修删都更新树 大表不分表直接使用 index,可能会造成增修删效能变差(更新树节点信息) 且存放 Index 会占用更多空间。 >>3 是指送 UDP 包到 TCP port? 做不到的,两个协定的包格式基本不一样 还是指在 UDP 下达到 "保证送达"? 这就做得到了,最简单的就是在 app.层弄个 ack 与 checksum |
7
templefox 2017-06-30 17:51:49 +08:00 via Android
写入 view 应该是要加 trigger,在 trigger 里你愿意怎么改 table 都成。我记得 mysql 里是这样。
|
8
Kilerd 2017-06-30 18:23:03 +08:00
起码第三题我会啊
kcp 不就是这个东西吗。 |
9
binux 2017-06-30 18:28:53 +08:00 1
> 就要用 UDP 做 TCP 协议怎么弄?
自定义报文结构太麻烦了,直接在 TCP 外面再套一层 UDP,拿 UDP 当 IP 层发出去不就好了。。 |
10
xiaoshenke 2017-07-01 18:06:23 +08:00 via Android
@binux 666
|