08 2017 档案

摘要:Follower是 follower节点启动的和leader进行同步的功能类 主要逻辑如下: 1.和leader建立链接 2.向leader发送自己的epoch和zxid. 处理来自leader的数据包 阅读全文
posted @ 2017-08-21 13:41 liron 阅读(474) 评论(0) 推荐(0)
摘要:QuorumPeer是zookeeper执行同步,选主过程的线程 主要逻辑: 1.当自己处于 LOOKING状态: 执行lookForLeader() 2.当自己处于OBSERVING状态: 建立一个Observer服务和leader进行同步 3.当自己处于LEADING时: 建立一个Leader服 阅读全文
posted @ 2017-08-21 13:29 liron 阅读(760) 评论(0) 推荐(1)
摘要:FastLeaderElection是zookeeper默认的选举算法,当peer处于ServerState.Looking状态时会执行FastLeaderElection.lookForLeader进行选主. 重要数据结构: 1.HashMap<Long, Vote> recvset: 本轮选举中 阅读全文
posted @ 2017-08-21 13:18 liron 阅读(468) 评论(0) 推荐(0)
摘要:Leader中重要的数据结构: 1.ConcurrentMap<Long, Proposal> outstandingProposals: 维护了待follower同步的proposal. 由 leader.propose负责插入, 由 leader.processAck负责移除. 2.Concur 阅读全文
posted @ 2017-08-21 12:57 liron 阅读(630) 评论(0) 推荐(0)
摘要:LeanerHandler是Leader接收Follower和Observer连接请求一个线程,当leader election结束后,follower或observer会主动连接leader,并向leader发送自己的 epoch 和 zxid,以供leader选出最大的epoch. zookee 阅读全文
posted @ 2017-08-21 11:08 liron 阅读(315) 评论(0) 推荐(0)
摘要:参考动画 http://thesecretlivesofdata.com/raft/ 节点类型: 1.leader 领导者 2.follower 跟随者 3.candidate 候选人 选择阶段:leader election. . 发生阶段可能是集群初始化启动或者发生网络分区跟leader失去联系 阅读全文
posted @ 2017-08-18 11:12 liron
摘要:jmap -heap $pid 打印堆使用信息,如新生代,老年代使用情况 jmap -dump:live,format=b,file=heap.bin $pid dump堆信息 jmap -histo:live $pid 打印每个class的实例数目,内存占用,类全名信息. VM的内部类名字开头会加 阅读全文
posted @ 2017-08-14 11:39 liron 阅读(125) 评论(0) 推荐(0)
摘要:jps -q //查询所有vm进程号 jps -v / 输出传递给JVM的参数 jps -m //传递给main函数的参数args jps -l //输出应用程序main class的完整package名 或者 应用程序的jar文件完整路径名 阅读全文
posted @ 2017-08-11 16:47 liron 阅读(95) 评论(0) 推荐(0)
摘要:jstat -gc pid //以字节形式展现 jstat -gcutil pid //以百分比形式展现 jstat -class pid //类加载和卸载状况 jstat -compilier pid //查看Jit编译的方法数及失败情况 jstat -printcompilation 4672 阅读全文
posted @ 2017-08-11 16:38 liron 阅读(187) 评论(0) 推荐(0)
摘要:Innodb引擎 1.innodb_buffer_pool_size 这个参数主要作用是缓存innodb表的索引,表数据,插入数据时的缓冲,可用内存70~80%比较合理. show status like 'Innodb_buffer_pool_%'; 2.nnodb_purge_batch_siz 阅读全文
posted @ 2017-08-10 21:16 liron 阅读(153) 评论(0) 推荐(0)
摘要:MyISam引擎: 1.query_cache_size MySQL查询缓存保存查询返回的完整结果。当查询命中该缓存,会立刻返回结果,跳过了解析,优化和执行阶段。 SHOW STATUS LIKE 'Qcache%'; 当查询中有一些不确定的数据时,是不会缓存的,比方说now(),current_d 阅读全文
posted @ 2017-08-10 20:57 liron 阅读(131) 评论(0) 推荐(0)
摘要:1.事物支持 MyIsam引擎不支持事物,Innodb支持事物 2.锁粒度 MyIsam支持表锁,Innodb支持行级锁和表锁,行级锁实现的方式是通过对索引加锁. 3.数据安全性 MyIsam相较于Innodb数据容易损坏,不容易恢复. 4.索引 MyISam主键索引和普通索引相同,都是保存的数据行 阅读全文
posted @ 2017-08-08 10:34 liron 阅读(160) 评论(0) 推荐(0)
摘要:order by主要优化出现filesort的情况,以下情况可以使用索引. 1.order by 字段都来自驱动表且满足索引的最左前缀. select a from test order by a,b 2.当order by字段不是最左前缀时,如果字段前的字段为常量则可以利用. select a f 阅读全文
posted @ 2017-08-07 16:03 liron 阅读(399) 评论(0) 推荐(0)
摘要:优化group by查询的时候,一般的会想到两个名词:松散索引扫描(Loose Index Scan)和紧凑索引扫描(Tight Index Scan),因为通过这两种索引扫描就可以高效快速弟完成group by操作。 松散索引扫描(Loose Index Scan): 松散索引扫描只需要读取很少量 阅读全文
posted @ 2017-08-07 15:45 liron 阅读(1461) 评论(0) 推荐(0)
摘要:1.select_type simple :它表示简单的select,没有union和子查询 dependent union:union依赖外层的查询 dependent subquery:subquery依赖外层的查询 2.type system:表仅有一行,这是const类型的特列,平时不会出现 阅读全文
posted @ 2017-08-07 12:19 liron 阅读(6396) 评论(0) 推荐(0)

点击右上角即可分享
微信分享提示