摘要:
* 本文讲哨兵模式按照配置运行起来之后 哨兵 master slave 之间连接建立过程. 我觉得了解了建立过程以及正常运行时的一个连接拓扑 对了解整个监视过程非常有帮助。因为之后的故障转移就是继续维持一个这样的拓扑。 1 假设有三个master以及各自的两个从节点: m1(r1, r2), m2( 阅读全文
摘要:
reids bio. 1 什么是redis bio? redis bio.c 开篇注释讲的很清楚 redis bio 是 Background I/O service for Redis. 该服务通过创建不同线程来执行不同的任务,分摊主线程压力。 2 用来做什么? redis 主线程用来处理命令,当 阅读全文
摘要:
Redis 主备复制 1 相关配置: 1) replicaof <masterip> <masterport> 2) masterauth <master-password> 设置时候 replica 在发送同步相关的命令时会被要求 authenticate 3) masteruser <usern 阅读全文
摘要:
REDIS AOF(Append Only File): redis AOF(Append Only File) MODE 流程: 1 相关配置参数: 1) appendonly no: 是否启用AOF模式,默认不启用 2) appendfilename "appendonly.aof": 只追加文 阅读全文
摘要:
1 论文 http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.14.8917&rep=rep1&type=pdf 2 解释 Binary Indexed Tree made Easy | HackerEarth 3 应用 1) leetc 阅读全文
摘要:
今天看源码时碰到一个MemoryPool.h文件和MemoryPool.tcc文件,毫不犹豫在vs工程下把.tcc加到了源文件文件夹下, 把.h文件放到了头文件文件夹下。结果闹了笑话: 以下是解释, 阅读全文
摘要:
前言: 最早是看到skynet群里边有人问如何取消定时器的问题,那时候正好在研读skynet代码,于是决定试试。但是最终只在lua层面实现了一个伪取消定时器的方案,而且还是不是优解。 云风说从c层面取消定时器的开销要大于从lua层面取消的开销,当时不知道为什么。 最近研读了云风实现的时间轮定时器代码 阅读全文
摘要:
1.这几天研究skynet中的 lua-netpack.c 中的解析数据包过程。于是把lua部分去掉,修改了一些接口,留下解包相关的代码。再结合云风写的网络代码的例子, 写了一个最简单形式的客户端封包,服务器解包的代码,作为学习笔记的同时也希望能够帮助一些像我一样的新手学习理解封包,解包的概念。 p 阅读全文
摘要:
1 本篇主要讨论下多线程下的单例模式实现: 首先是 double check 实现方式: 这种模式可以满足多线程环境下,只产生一个实例。 但是这种实现存在除bug的隐患, 问题就在: value_ = new T; 上。《程序员的自我修养》上指出: 这样的代码是有问题的,问题的来源在于 cpu 的乱 阅读全文
摘要:
1.首先从一到题目开始谈说起迭代器失效。有时我们很自然并且自信地 用下面方法删除vector元素: #include <iostream>#include <stdio.h>#include <vector>#include <algorithm>#include <string>using nam 阅读全文