快牵着我的袜子

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

2022年4月27日

摘要: 一、复制方式 MySQL支持三种复制方式: 1)基于语句的复制(也称为逻辑复制)主要是指,在主数据库上执行的SQL语句,在从数据库上会重复执行一遍 。MySQL默认采用的就是这种复制,效率比较高。 但是也是有一定的问题的,如果SQL中使用uuid()、rand()等函数,那么复制到从库的数据就会有偏 阅读全文
posted @ 2022-04-27 14:32 快牵着我的袜子 阅读(65) 评论(0) 推荐(0) 编辑

2022年4月26日

摘要: 1、进程之间的通信方式? 管道、有名管道、信号量、消息队列、共享内存。 2、管道怎么实现的? 管道实际是在内核中开辟出的一块缓冲区,用于进程间通信,这块缓冲区称为管道,管道有一个读端一个写端,只能写端写入数据,读端读出数据。管道是单向通信,只能一个write,一个read。 匿名管道:只有具有血缘关 阅读全文
posted @ 2022-04-26 23:24 快牵着我的袜子 阅读(47) 评论(0) 推荐(0) 编辑

2022年4月16日

摘要: 一、TCP可靠性 TCP可靠传输主要通过两种方式保证可靠性,分别为滑动窗口、超时重传。 1.1、以字节为单位的滑动窗口 1)假定数据传输只在一个方向进行,即A发送数据,B给出确认。这样的好处是使讨论限于两个窗口,即发送方A的发送窗口和接收方B的接收窗口。 现假定A收到了B发来的确认报文段,其中窗口是 阅读全文
posted @ 2022-04-16 17:25 快牵着我的袜子 阅读(453) 评论(0) 推荐(0) 编辑

摘要: 一、TCP 1.1、头部 1)序列号:本报文段所发送的数据的第一个字节的序号 例如,一报文段的序号字段值是301,而携带的数据共有100字节。这就表明:本报文段的数据的第一个字节的序号是 301,最后一个字节的序号是400。显然, 下一个报文段(如果还有的话)的数据序号应当从401开始,即下一个报文 阅读全文
posted @ 2022-04-16 15:13 快牵着我的袜子 阅读(302) 评论(0) 推荐(0) 编辑

2022年4月14日

摘要: 一、三次握手 1、连接过程 1.1 被动打开: 服务器必须准备好接受外来的连接。这通常通过调用socket、bind和listen这三个函数来完成。服务器状态由closed转换为listen状态。 1.2 主动打开: 客服端通过调用connect发起主动打开。客户TCP会发送一个SYN分解,包含本端 阅读全文
posted @ 2022-04-14 20:06 快牵着我的袜子 阅读(108) 评论(0) 推荐(0) 编辑

2022年4月1日

摘要: 一、主从复制 1、命令 PSYNC:该命令具有完整重同步和部分重同步。 完成重同步:通过主服务器创建并发送RDB文件,以及向从服务器发送保存在缓冲区那里面的写命令来进行同步。 部分重同步:当从服务器在断线重连主服务器之后,则主服务器将主从服务器断开期间执行的写命令发送给从服务器。从服务器接收并执行这 阅读全文
posted @ 2022-04-01 17:41 快牵着我的袜子 阅读(156) 评论(0) 推荐(0) 编辑

2022年3月31日

摘要: 一、文件事件 1、组成四部分 1)套接字:每当一个套接字准备好执行连接应答、写入、读取、关闭等操作时,就会产生一个文件事件 2)I/O多路复用程序:监听多个套接字,并向温江分派器传送那些发生了事件的套接字 I/O多路复用的功能鞥都是通过包装常见的select、epoll、evport和kqueue这 阅读全文
posted @ 2022-03-31 20:39 快牵着我的袜子 阅读(45) 评论(0) 推荐(0) 编辑

摘要: 一、RDB RDB持久化通过保存数据库中的键值对记录服务器状态。 1、生成RDB文件 两个命令用于生成RDB文件,一个是SAVE,一个是BGSAVE。 两者区别: 1) SAVE命令会阻塞redis服务器进程,直到RDB文件创建完毕为止 调用函数: def SAVE(): rdbSave() 2) 阅读全文
posted @ 2022-03-31 18:22 快牵着我的袜子 阅读(32) 评论(0) 推荐(0) 编辑

2020年9月9日

摘要: 一、redis键的生存时间及过期时间设置 设置过期时间命令 1)expire<key> <ttl>:将键key的生存时间设置为ttl秒 2)pexpire<key> <ttl>:将键key的生存时间设置为ttl毫秒 3)expireat<key> <timestamp>:将键key的生存时间设置为t 阅读全文
posted @ 2020-09-09 20:36 快牵着我的袜子 阅读(246) 评论(0) 推荐(0) 编辑

摘要: redis基础数据结构和编码方式 一、底层数据结构 1)简单动态字符串(SDS) SDS是二进制安全的。buf用于保存的是一系列二进制数据。 struct sdshdr{ int len; //记录数组中已使用字节的数量 int free; //记录数组中未使用字节的数量 char buf[]; / 阅读全文
posted @ 2020-09-09 17:42 快牵着我的袜子 阅读(1427) 评论(0) 推荐(0) 编辑