My Avatar

JacketWoo

King Birds Fly Fast and Early!

基于HTTP2提升apns推送性能实践

2018年05月09日 星期二

阅读全文

FLP 证明

2018年04月28日 星期六

最近有点空闲时间,就将以前的看过的FLP论文,又重新温习了一遍,为了便于以后可以快速回顾,所以记下这篇笔记

FLP论文 由Fischer, Lynch 和 Patterson三位分布式领域大牛于1985年发表,论文要表达的主题是:分布式异步模型中,没有一种一致性协议可以保证系统在某个进程(服务)挂掉后仍然是完全可靠的。

阅读全文

《paxos made simple》笔记

2017年03月14日 星期三

我认为本文主要讨论的是paxos如何解决一致性协议中的safety属性的内容,而对termination(liveness)和faulty tolerance没有涉及太多。

阅读全文

linux-2.6.32版本内核引起的客户端超时问题总结

2016年08月28日 星期日

阅读全文

phpredis的RedisCluster客户端使用总结

2016年08月17日 星期二

前段时间基础架构组、DBA还有云盘团队一起推广了phpredis的RedisCluster的线上使用,目前线上业务已经稳定,单业务的规模水平是:Qps平均15W,数据量在700G左右。现对这段时间的工作和所遇到的一些常见问题进行简单总结:

阅读全文

关于TCP连接的99号和110号错误

2016年06月13日 星期一

当客户端频繁的采用短链接时候,经常会遇到[110][connection time out]和[99][could not assigned requested address]的错误。前段时间我们的存储服务就遇到了这样的一拨报警,经过调研分析,基本确定以上这两个错误与客户端端口的TIME-WAIT状态以及服务端的listen队列有关(当然也有其它可能的原因,这里只分析这两种)。

从客户端来看,在我们的应用场景中,因为频繁的使用端连接,而且在同一台机上的客户端的数量比较多,造成了大量的TIME-WAIT状态的端口,当TIME-WAIT状态端口的数量铺满了整个port_range(由ip_local_port_range内核参数指定)范围后,就会产生99号错误;从服务端来看,因为频繁大量的accept短链接,到达一定量后,服务端口的listen队列会出现溢出,这个时候,新的连接请求会被丢弃,连接建立失败,客户端也就产生了110号错误。 下面具体介绍两种错误产生的原因

阅读全文