一。libevent概念 Libevent 是一个用C语言编写的、轻量级的开源高性能事件通知库,主要有以下几个亮点:事件驱动( event-driven),高性能;轻量级,专注于网络,不如 ACE 那么臃肿庞大;源代码相当精炼、易读;跨平台,支持 Windows、 Linux、 *BSD 和 Mac ...
分类:
其他好文 时间:
2019-08-07 22:10:06
阅读次数:
136
redis有三种集群方式:主从复制,哨兵模式和集群。 1.主从复制 主从复制原理: 从服务器连接主服务器,发送SYNC命令; 主服务器接收到SYNC命名后,开始执行BGSAVE命令生成RDB文件并使用缓冲区记录此后执行的所有写命令; 主服务器BGSAVE执行完后,向所有从服务器发送快照文件,并在发送 ...
分类:
其他好文 时间:
2019-08-07 18:52:22
阅读次数:
83
c/c++ console(控制台)编程详解 原文地址:https://www.cnblogs.com/flowingwind/p/8159035.html 前言: 控制台文本窗口的控制是基于win32 api(win32 api可理解为微软给我们提供的一系列函数的集合)实现的; 例1: #incl ...
分类:
编程语言 时间:
2019-08-07 14:36:08
阅读次数:
140
应用系统分层架构,为了加速数据访问,会把最常访问的数据,放在缓存(cache)里,避免每次都去访问数据库。 操作系统,会有缓冲池(buffer pool)机制,避免每次访问磁盘,以加速数据的访问。 MySQL作为一个存储系统,同样具有缓冲池(buffer pool)机制,以避免每次查询数据都进行磁盘 ...
分类:
数据库 时间:
2019-08-06 11:16:16
阅读次数:
134
TCP滑动窗口 发送端 LastByteAcked:第一部分和第二部分的分界线 LastByteSent:第二部分和第三部分的分界线 LastByteAcked + AdvertisedWindow:第三部分和第四部分的分界线 第一部分:发送了并且已经确认的。第二部分:发送了并且尚未确认的。第三部分 ...
分类:
其他好文 时间:
2019-08-05 23:10:26
阅读次数:
169
文本处理三剑客之SEDSed介绍Sed用法Sed高级用法处理文本的工具sedSteeamEDitor,行编辑器SED是一种流编辑器,它一次处理一行内容。处理时,把当前处理的行储存在临时缓冲区中,称为"模式空间"(patternapace),接着用sed命令处理缓冲区中的内容处理完成后,把缓冲区的内容送往屏幕。然后读入下行,执行下一个循环如果没有使诸如‘D‘的特殊命令,那会在两个循环之间清空模式空间
分类:
其他好文 时间:
2019-08-04 23:54:31
阅读次数:
191
菜就是原罪,不抱怨,睡眠充足 命令 在理想情况下, used_memory_rss 的值应该只比 used_memory 稍微高一点儿。当 rss used ,且两者的值相差较大时,表示存在(内部或外部的)内存碎片。 内存碎片的比率可以通过 mem_fragmentation_ratio 的值看出。 ...
分类:
其他好文 时间:
2019-08-04 21:10:35
阅读次数:
139
什么是IO 生活中,你肯定经历过这样的场景。当你编辑一个文本文件,忘记了ctrl+s ,可能文件就白白编辑了。当你电脑上插入一个U盘,可以把一个视频,拷贝到你的电脑硬盘里。那么数据都是在哪些设备上的呢?键盘、内存、硬盘、外接设备等等。 我们把这种数据的传输,可以看做是一种数据的流动,按照流动的方向, ...
分类:
其他好文 时间:
2019-08-04 15:16:45
阅读次数:
84
本身不是锁,但是经常和锁结合使用 使用流程: 1. 创建 条件变量:var cond sync.Cond 2. 指定条件变量用的 锁: cond.L = new(sync.Mutex) 3. cond.L.Lock() 给公共区加锁(互斥量) 4. 判断是否到达 阻塞条件(缓冲区满/空) —— fo ...
分类:
其他好文 时间:
2019-08-04 01:15:38
阅读次数:
92
一、第一个 C++ 程序 等价于: 分析: 1.C++中 "\n" 与 endl 的区别是什么? "\n" 表示内容为一个回车符的字符串。std::endl 是流操作子,输出的作用和输出 "\n" 类似,但可能略有区别。 std::endl 输出一个换行符,并立即刷新缓冲区。 例如: 相当于: 由于 ...
分类:
编程语言 时间:
2019-08-03 23:14:21
阅读次数:
105