摘要: 1. 查询索引 mysql> SHOW index FROM `tblname`; mysql> SHOW keys FROM `tblname`; 运行以上命令得到的结果,下面将将所得的结果中每列的意思做一下说明: Table 表的名称。 Non_unique 如果索引不能包括重复词,则为0。如果 阅读全文
posted @ 2021-09-08 15:19 Nelson-Wang 阅读(703) 评论(2) 推荐(1)
摘要: 前言 二分查找作为程序员的一项基本技能,是面试官最常使用来考察程序员基本素质的算法之一,也是解决很多查找类题目的常用方法,它可以达到O(log n)的时间复杂度。 一般而言,当一个题目出现以下特性时,你就应该立即联想到它可能需要使用二分查找: 待查找的数组有序或者部分有序 要求时间复杂度低于O(n) 阅读全文
posted @ 2021-08-31 15:41 Nelson-Wang 阅读(341) 评论(0) 推荐(0)
摘要: 1. 粘包产生的原因 如果客户端连续不断的向服务端发送数据包时,服务端接收的数据会出现两个数据包粘在一起的情况,这就是TCP协议中经常会遇到的粘包以及拆包的问题。 传输层的UDP协议是否会发生粘包或者拆包问题? 不会。UDP是基于报文发送的,在UDP首部采用了16bit来指示UDP数据报文的长度,因 阅读全文
posted @ 2021-08-27 19:50 Nelson-Wang 阅读(739) 评论(0) 推荐(1)
摘要: 1. 对象的类型与编码 Redis使用前面说的五大数据类型来表示键和值,每次在Redis数据库中创建一个键值对时,至少会创建两个对象,一个是键对象,一个是值对象,而Redis中的每个对象都是由 redisObject 结构来表示: typedef struct redisObject{ //类型 u 阅读全文
posted @ 2021-08-26 14:53 Nelson-Wang 阅读(498) 评论(0) 推荐(2)
摘要: 1. 演示数据类型的实现 用来显示那五大数据类型的底层数据结构的命令 OBJECT ENCODING key 比如对于 string 数据类型: 2. 简单动态字符串 Redis 是用 C 语言写的,但是对于Redis的字符串,却不是 C 语言中的字符串(即以空字符’\0’结尾的字符数组),它是自己 阅读全文
posted @ 2021-08-26 14:30 Nelson-Wang 阅读(130) 评论(0) 推荐(0)
摘要: 1. 概述 用户数据报协议(UDP,User Datagram Protocol)为应用程序提供了一种无需建立连接就可以发送封装的 IP 数据报的方法。UDP是一种保留消息边界的简单的面向数据报的协议。UDP不提供差错纠正、队列管理、重复消除、流量控制和拥塞控制,但提供差错检测。这种协议自身提供最小 阅读全文
posted @ 2021-08-16 21:53 Nelson-Wang 阅读(977) 评论(0) 推荐(0)
摘要: 1. TCP简介及报文格式 1.1 简介 TCP(Transmission Control Protocol)传输控制协议是一种面向连接的、可靠的、基于字节流的传输层协议。 1.2 报文格式 重要字段: 端口号:16位,用来标识同一台计算机的不同的应用进程。 1)源端口:源端口和IP地址的作用是标识 阅读全文
posted @ 2021-08-16 21:19 Nelson-Wang 阅读(528) 评论(2) 推荐(0)
摘要: 1. TCP 可靠性如何保证? 信道可靠:用三次握手、四次挥手保证连接正确; 数据正确:分区编号、校验和、超时重传; 传输控制:流量控制、拥塞控制 2. 重传机制 TCP可靠传输方式是序列号与确认应答。当传送数据包丢失时,会用重传机制解决。常见重传机制有超时重传、快速重传、SACK、D-SACK。 阅读全文
posted @ 2021-08-15 23:39 Nelson-Wang 阅读(659) 评论(0) 推荐(0)
点击右上角即可分享
微信分享提示