摘要:
关于 目前有三种 (1)Twitter开发的twemproxy (2)豌豆荚开发的codis (3)redis官方的redis-cluster Twemproxy 架构简单 就是用proxy对后端redis server进行代理 但是由于代理层的消耗性能很低 而且通常涉及多个key的操作都是不支持的 阅读全文
摘要:
关于 目前有三种 (1)Twitter开发的twemproxy (2)豌豆荚开发的codis (3)redis官方的redis-cluster Twemproxy 架构简单 就是用proxy对后端redis server进行代理 但是由于代理层的消耗性能很低 而且通常涉及多个key的操作都是不支持的 阅读全文
摘要:
目录 问题原形 条件选择 HyperLogLog 伯努利试验 估算的优化 扯上关系 比特串 分桶 对应 Redis 中对 HyperLogLog 的应用 Redis 中的 HyperLogLog 原理 偏差修正 巨人的肩膀 比特串 分桶 对应 Redis 中的 HyperLogLog 原理 问题原形 阅读全文
摘要:
前言: 数据库集群,读写分离现在可以说是项目必备的了,但是我们如何保证其每个数据库的数据一致性? 1 半同步复制 简单的说就是: 主库发生增删改操作的时候,会等从库及时复制了并且通知了主库, 才会把这个操作叫做成功. 优点:保证数据一致性 缺点:就是会慢 专业的讲: 半同步复制,是等待其中一个从库也 阅读全文
摘要:
defer 先说结论:return最先执行->return负责将结果写入返回值中->接着defer开始执行一些收尾工作->最后函数携带当前返回值退出 先进后出, 栈的形式 交叉编译 golang如何在一个平台编译另外一个平台可以执行的文件。比如在mac上编译Windows和linux可以执行的文件。 阅读全文
摘要:
MySQL主备复制原理 MySQL master 将数据变更写入二进制日志( binary log, 其中记录叫做二进制日志事件binary log events,可以通过 show binlog events 进行查看) MySQL slave 将 master 的 binary log even 阅读全文
摘要:
公司最近在搞服务分离,数据切分方面的东西,因为单张包裹表的数据量实在是太大,并且还在以每天60W的量增长。 之前了解过数据库的分库分表,读过几篇博文,但就只知道个模糊概念, 而且现在回想起来什么都是模模糊糊的。 今天看了一下午的数据库分库分表,看了很多文章,现在做个总结,“摘抄”下来。(但更期待后期 阅读全文
摘要:
预防机制在开发高并发系统时有三把利器用来保护系统:缓存、降级和限流。缓存:目的是提升系统访问速度和增大系统能处理的容量,在实际的开发过程中,针对于一些基础档案类数据或者配置参数类数据,我们一般用缓存读取,原因是这些数据的变化性不大,这一部分我们可以减少和数据库的IO交互 缓存失效分为几种场景:1.缓 阅读全文
摘要:
为什么分布式系统需要用到ID生成系统 在复杂分布式系统中,往往需要对大量的数据和消息进行唯一标识。如在美团点评的金融、支付、餐饮、酒店、猫眼电影等产品的系统中,数据日渐增长,对数据库的分库分表后需要有一个唯一ID来标识一条数据或消息,数据库的自增ID显然不能满足需求;特别一点的如订单、骑手、优惠券也 阅读全文
摘要:
HTTP2.0优势 1.采用二进制格式传输数据,而非http1.1文本格式,二进制格式在协议的解析和优化扩展上带来了跟多的优势和可能 2.对消息头采用Hpack进行压缩传输,能够节省消息头占用的网络流量,http1.1每次请求,都会携带大量冗余的头信息,浪费了很多宽带资源。 3.异步连接多路复用 4 阅读全文
|