推荐: blog.csdn.net/aquester https://github.com/eyjian https://www.cnblogs.com/aquester http://blog.chinaunix.net/uid/20682147.html
全部博文(595)
发布时间:2019-04-22 11:36:27
对于REdis集群,如果设置了requirepass,则一定要设置masterauth,否则从节点无法正常工作,查看从节点日志可以看到哪下内容:19213:S 22 Apr 2019 10:52:17.389 * Connecting to MASTER 1.6.18.16:218119213:S 22 Apr 2019 10:52:17.389 * MASTER <-> REPLICA sync started19213:S 22 Apr 2019 10:52:17.389 * Non blo.........【阅读全文】
发布时间:2019-04-17 17:14:59
Apache开源的Thrift(http://thrift.apache.org)有着广泛的使用,有时候需要知道谁调用了指定的函数,比如在下线一起老的接口之前,需要确保对这些老接口的访问已全部迁移到新口。Thrift提供了支持,在《Thrift结构分析及增加取客户端IP功能实现》一文中已做过介绍,但不够具体。本文对这个做一个详细的介绍,过.........【阅读全文】
发布时间:2019-04-02 19:31:49
RDB配置:save 900 1save 300 10save 60 10000stop-writes-on-bgsave-error nordbcompression yesrdbchecksum yesrepl-diskless-sync noaof-use-rdb-preamble nordb-save-incremental-fsync yes影响:易生成REdis客户端的连接超时。建议:如果已经开启了AOF,可关闭RDB,即将save参数值设置为空:save "";.........【阅读全文】
发布时间:2019-04-01 10:11:25
分析版本:REdis-5.0.4。 REdis命令处理流程可分解成三个独立的流程(不包括复制和持久化):1) 接受连接请求流程;2) 接收请求数据和处理请求流程,在这个过程并不会发送处理结果给Client,而只是将结果数据写入响应缓冲,将由响应请求流程来发送;3) 响应请求流程。&n.........【阅读全文】
发布时间:2019-03-26 16:11:04
结论:这种情况下复制节点(即从节点)无法提升为主节点,复制节点会一直尝试和主节点建立连接,直接成功。主节点恢复后,复制节点仍然保持为复制节点,并不会成为主节点。复制节点无法提升为主节点的原因是复制节点未发起成为主节点的选举。 复制节点日志:14304:S .........【阅读全文】
发布时间:2019-03-21 16:26:22
REdis版本:4.0.9运行环境:Linux 3.10.107 x86_64 gcc_version:4.8.5结论:是一个BUG,在4.0.11版本中被作者antirez所修复 现象:1) top显示 2) 执行REdis info命令直接卡住不动3) 集群通讯端口大量的“CLOSE_WAIT”4) 日志.........【阅读全文】
发布时间:2019-03-19 12:50:17
先说结论(不一定适用所有环境):1) GCC默认开启了返回值优化(RVO),除非编译时指定“-fno-elide-constructors”;2) 现代C++编译器一般都支持返回值优化;3) string的拷贝构造和拷贝赋值是浅拷贝。 测试环境:1) gcc (GCC) 4.8.52) g++ (G.........【阅读全文】
发布时间:2019-03-18 19:17:47
Facebook贡献给Apache的开源RPC组件Thrift有着广泛的应用,C++中使用Thrift也十分普遍,但由于Thrift的Handler会被多个线程调用,因而多线程中应用并不直接的友好,利用C++的“thread_local”特性或GCC的“__thread”特性可化简这一问题。看具体实例,有一Thrift service:XService,编译后生成接口文.........【阅读全文】
发布时间:2019-03-18 14:45:14
先说结论:C++的类成员函数和C函数实质是一样的,只是C++类成员函数多了隐藏参数this。通过本文的演示,可以看见这背后的一切,完全可C函数方式调用C++类普通成员函数和C++类虚拟成员函数。 为了实现C函数方式调用C++类成员函数,准备两个文件:。1) 被调用的C++类成员函数源代码文件aaa.c.........【阅读全文】
发布时间:2019-03-14 16:28:39
说明:以下涉及的std::string的源代码摘自4.8.2版本。结论:std::string的拷贝复制是基于引用计数的浅拷贝,因此它们指向相同的数据地址。// std::string类定义typedef basic_string string;templateclass basic_string{private: // _Al.........【阅读全文】
yuanxy20132014-01-14 14:48
LZ,你的基于C++的纯面向对象的通用高性能大并发TCP-SERVER/CLIENT开发框架实践系列之《前言篇》,《基础篇》写得非常棒,但是《服务器篇》、《客户端篇》却找不到,恳请楼主赐读。