摘要: 跳出来,看全景 钻进去,看本质 阅读全文
posted @ 2021-11-10 01:50 starry_sky 阅读(123) 评论(0) 推荐(0) 编辑
摘要: 背景 在高并发的业务场景下,数据库的性能瓶颈往往是用户并发访问过大造成的,所以会有个Redis做个缓冲。 case 一、A写,B读, 写:1.淘汰cache 2.写操作(由于各种原因消耗了1s) 3.更新cache 读:1.读cache 2.读DB 3更新cache 在成功写入之前就读取了,会导致读 阅读全文
posted @ 2020-04-10 22:58 starry_sky 阅读(768) 评论(0) 推荐(0) 编辑
摘要: 今天遇见一个奇怪的问题,在python中,对自定义类型的局部变量竟然不进行垃圾回收 测试代码如下 # encoding=utf-8 from memory_profiler import profile import gc import time class A(object): def __ini 阅读全文
posted @ 2020-03-09 23:16 starry_sky 阅读(412) 评论(0) 推荐(0) 编辑
摘要: 红黑树满足一下规则 1. 每个节点不是红色就是黑色 2.根节点为黑色 3.如果节点为红,其子节点必须为黑 4.任一节点至nil的任何路径,所包含的黑节点数必须相同。 5.叶子节点nil为黑色 当破坏了平衡时,在调整的时候需要用到左旋和右旋 左旋: 右旋: 代码实现: 1 void rb_tree:: 阅读全文
posted @ 2019-08-26 11:21 starry_sky 阅读(1826) 评论(0) 推荐(0) 编辑
摘要: 当两个指针指向通过一个地址时,如果其中一个指针对其进行了内存释放,另外一个指针是不知道的,这时候对另一个指针进行操作就会操作段错误等问题。这就是一个空悬指针的案例。例如下面的代码就会使得b指针变成空悬指针 输出结果为: 一开始是指向同一个地址,但当a指针进行了内存释放并指向NULL时,b指针还是指向 阅读全文
posted @ 2019-07-15 11:24 starry_sky 阅读(662) 评论(0) 推荐(0) 编辑
摘要: 1、TCP/IP协议族 HTTP是TCP/IP内部中的一个子集,HTTP是建立TCP协议之上的,当进行HTTP通信时,也可以说进行了TCP通信。具体流程如下图所示: 图片来源于 图解HTTP 1.1 TCP协议 按层次分,TCP位于传输层,提供可靠的字节流服务。所谓的字节流服务是指,为了方便传输,将 阅读全文
posted @ 2019-06-18 17:16 starry_sky 阅读(432) 评论(0) 推荐(0) 编辑
摘要: 拷贝构造函数默认的是浅拷贝。当不涉及到堆内存时用浅拷贝完全可以,否则就需要深拷贝了。 浅拷贝相当于一个箱子有多个钥匙,但其中一个人打开箱子取走箱子里的东西时,其他人是不知道的。 深拷贝是有多个箱子每个箱子对应一个钥匙,但一个人取走他的钥匙对应的箱子里的东西时,不会对其他人产生影响。 运行结果如下: 阅读全文
posted @ 2019-05-09 22:38 starry_sky 阅读(6768) 评论(0) 推荐(0) 编辑
摘要: 1、理解网络编程和套接字 网络编程就是编写程序使两台连网的计算机相互交互数据。 1.1构建接电话套接字 套接字大致分为两种,其中,先要讨论的TCP套接字可以比喻成电话机。实际上,电话机也是通过电话网完成语言数据交换的。 成功时返回文件描述符,失败时返回-1 成功时返回0,失败时返回-1 成功时返回0 阅读全文
posted @ 2019-03-22 11:41 starry_sky 阅读(422) 评论(0) 推荐(0) 编辑
摘要: 具有代表性的并发服务器端实现模型和发: 1、多进程服务器:通过创建多个进程提供服务。 2、多路复用服务器:通过捆绑并统一管理I/O对象提供服务。 3、多线程服务器:通过生成与客户端等量的线程提供服务。 一、进程概念及应用 进程:“占用内存空间的正在运行的程序”。 从操作系统的角度看,进程是程序流的基 阅读全文
posted @ 2019-03-17 17:48 starry_sky 阅读(832) 评论(0) 推荐(0) 编辑
该文被密码保护。 阅读全文
posted @ 2019-02-25 18:08 starry_sky 阅读(67) 评论(0) 推荐(0) 编辑