一些问题

1.粘包和拆包
定义:TCP是流式协议,无边界,客户端发送的多个网络包,服务器可能无法独立接受,网络包之间会有粘包和拆包现象。
原因:
-- nagle算法,TCP发送缓冲区中的多个包一起发送。
-- 包太大,大于TCP发送缓冲区,发生拆包。
-- 发送数据大于MSS,发生拆包。
-- 接收端应用层没有及时读取接收端缓冲区数据,发生粘包。
解决方法:
-- 消息定长。
-- 设置消息边界。
-- 将消息分为包头和包体,包体包含消息总长字段。
-- 关闭nagle算法。

2.一个线程崩溃会导致进程崩溃吗?
线程间共享内存空间,线程崩溃可能导致内存出错,导致os向进程发送信号,信号的默认方式是杀死进程,可以自己信号处理函数,捕获信号,这样进程就不会崩溃。

3.如何解决IPV4耗尽问题?
-- IPV6。
-- NAT技术(私有地址转换成公有地址)。

4.ping的原理?
原理:ICMP协议。
ping不通原因:
-- ***。
-- 对方关机/IP不存在。
-- 网段不同,通过路由无法找到。

5.索引失效情况?
-- 对索引使用左或左右模糊匹配(like %xx like %xx%)
-- 对索引使用函数(索引保存的是原始值)
-- 对索引进行表达式计算
-- 联合索引非最左匹配
-- where子句中存在or

全部评论
我觉得网络东西就这样多,杂,零散
点赞 回复 分享
发布于 2022-07-26 14:42

相关推荐

评论
点赞
3
分享

创作者周榜

更多
牛客网
牛客企业服务