摘要:
ACID,是用来声明数据库事务的四大特性,即原子性 (Atomicity)、 一致性(Consistency)、隔离性(Isolation) 和 持久性(Durability).原子性: 既然谈到原子性,首先确定的是数据库引擎和事务已经开始了,在工作中事务一般是一组操作的集合,而原子性想要表达的就是 阅读全文
摘要:
##问题产生原因 发送基本标准 1.达到batch size 触发发送 2.linger.ms 时间达到触发 这两个参数配合好可以很好的控制生产者发送频率,但也带来了一些问题,失败回调获取不到数据重发,重试依然可能失败,所以一般不配置重试,或象征性一次。 解决思路:发送前预存一条有状态消息到数据库, 阅读全文
摘要:
##官方解决文档: http://git.mydoc.io/?t=154712 1)、重新生成ssh ssh-keygen -t rsa -C “xxxxx@xxxxx.com” 2)、查看你的 public key cat ~/.ssh/id_rsa.pub (以ssh-rsa 开头,以账号的注册 阅读全文
摘要:
broker 高可用 镜像队列 异步解耦削峰 异步:不重要的业务场景,可以忍受延迟一致性 栗子;亿通行,全民K歌发布 好友不会第一时间看到。入库-订阅binlog-重建缓存 反正不影响。 解耦:面向对象是说大家一起干一件事情,谁负责啥谁负责啥,解耦是说将他们在这之间抽出来,之后执行也行。 削峰:大量 阅读全文
摘要:
为啥快? 1.基于内存 2.优秀的数据结构,大多数O(1) 时间复杂度的命令 3.自定义redis协议 4.多路I/O复用模型 5.单线程,避免线程切换影响 持久化方式 区别? AOF(保存的是命令) 优点:最多丢失一秒数据 缺点:体积大,恢复慢(重新再让命令) RDB(保存的是快照) 优点:最大化 阅读全文
摘要:
##主从复制 模仿Mysql实现的高可用,数据备份,读操作的负载均衡,提升一定的qps,但缺点就是不能自动恢复,且只有主节点可写,限制了写能力,并且单机存储有限制。 ##哨兵 哨兵机器就是单纯的为了解决主从的自动切换,自动恢复,其他都没有影响。 ##集群 集群将16384个槽位(也叫数据分片:不放在 阅读全文
摘要:
##缓存一致性 数据库与缓存 这个问题是个坑,无论是先操作数据库还是缓存都不可能100%保证一致性,一般都是先操作数据库,后删除缓存,缓存操作比较快, 不一致时间窗口会小很多,有订阅binlog的也一样不能保证100%一致性。 但任何问题都可以通过中间层解决,在上方再去抽象出单独的锁资源,下游完成之 阅读全文
摘要:
kafka + zookeeper kafka官网:https://kafka.apache.org/documentation/#brokerconfigs_offsets.commit.required.acks kafka生产环境配置详解 JVM配置:建议6G 环境变量 某公司生产环境配置 k 阅读全文
摘要:
##Kafka 概念解释 topic:队列 producer:生产者,指发送消息端 consumer:消费者,消息消费端 consumer group:消费者组,消息会发给每个消费者组,每个消费者对应一个消费者组 border:kafka服务器 partition:分区 replication-fa 阅读全文
摘要:
##分布式事务一致性 CAP,BASE理论,到一致性模型,再到分布式事务。 BASE理论 基本可用(Basically Available):指分布式系统在出现故障时,允许损失部分的可用性来保证核心可用。 软状态(Soft State):指允许分布式系统存在中间状态,该中间状态不会影响到系统的整体可 阅读全文
摘要:
CAP选型 一个分布式系统最多只能同时满足一致性(Consistency)、可用性(Availability)和分区容错性(Partition tolerance)这三项中的两项。 P一定要满足,P是指在众多服务中某一服务出现故障,就叫做P,保障C还是A。 其实选型就是选 是否是CP 也就是说在系统 阅读全文