摘要: 思路分析: 插入排序是默认第一个元素为最小值(或最大值), 然后将后面的数依次与前面进行比较, 如果小于就交换位置 代码: public class Insert { public void Sort(int[] arrays){ for(int i = 1; i < arrays.length; 阅读全文
posted @ 2020-04-18 22:48 Coding-Liu 阅读(109) 评论(0) 推荐(0)
摘要: 节点类型与Watcher是重点, 很多的应用场景都可以从这些特性发出考虑: 临时节点 持久节点 顺序节点 当需要设计一个系统, 需要考虑上面的两点以及每个节点可以存储少量的数据 统一命名服务: 在zookeeper中, 每一个数据节点都能够维护一份子节点的顺序序列, 当客户端对其创建一个顺序子节点的 阅读全文
posted @ 2020-04-18 21:46 Coding-Liu 阅读(97) 评论(0) 推荐(0)
摘要: 成员: leader(接受所有的事务请求) follower(历史事务集合) observer(不参与过半选举,提高读性能) ZAB协议: 在ZAB协议中,每个事务都有一个编号ZXID(一个64位的数字),ZXID由两部分组成,高32位是epoch,低32位是递增计数器 epoch: 选举周期 计数 阅读全文
posted @ 2020-04-18 20:57 Coding-Liu 阅读(186) 评论(0) 推荐(0)
摘要: Paxos有三个成员: Proposer:提案的提出者 Acceptor:提案的接受者,批准是否同意 Learner:Accepter告诉Learner哪个提案被选定,那么Learner就学习这个提案的value 生成提案: 1,proposer生成一个提案Mn,然后向某个Accepter集合成员发 阅读全文
posted @ 2020-04-18 15:39 Coding-Liu 阅读(189) 评论(0) 推荐(0)
摘要: 介绍MySQL两阶段提交之前,先介绍一下Redo Log 和 Binlog redo log: 在MySQL中如果每次更新都需要写进磁盘,然后磁盘也要找到那条记录,然后在更新,整个过程IO成本、查找成本都很高,因此引入了redo log。这里用到了MySQL中的WAL技术,Write-Ahead L 阅读全文
posted @ 2020-04-18 14:27 Coding-Liu 阅读(3643) 评论(0) 推荐(0)
摘要: zookeeper特性: 顺序一致性,客户端发起的事务请求会严格按照其发起顺序被应用到zookeeper中,用队列维护 原子性,事务请求的应用情况在集群中所有机器上是一致的,要么全部成功,要么全部不成功 单一视图,client无论连接到哪个server,数据视图都是一致的 实时性,在一定时间范围内, 阅读全文
posted @ 2020-04-18 12:41 Coding-Liu 阅读(154) 评论(0) 推荐(0)
摘要: 概念: 当一个事务需要跨越多个分布式节点的时候,需要保持事务处理的ACID,引入“协调者”的组件统一调度所有分布式节点的执行逻辑,被调度的节点称为“参与者”。协调者负责调度参与者的行为,并最终决定这些参与者是否要把事务真的提交。因此引入2PC和3PC。 2PC: 二阶段提交,为了使基于分布式系统架构 阅读全文
posted @ 2020-04-17 19:47 Coding-Liu 阅读(211) 评论(0) 推荐(0)
摘要: 思路分析: 每次从数组中选出最大或最小的的,放在首位或末尾,使用下标pos进行记录,循环结束得到最终的pos,那么在进行交换 注意pos的设置和参数条件的设置 代码: public class Selection { public static void main(String[] args) { 阅读全文
posted @ 2020-04-15 18:29 Coding-Liu 阅读(110) 评论(0) 推荐(0)
摘要: 思路分析: 两两交换,把最大的值依次放在最后,实现排序,使用两层循环 易错点是两层的循环的条件错误,第一层循环是需要循环的次数,比如长度为5,那么需要4次循环,第二层是需要交换的次数 代码: public class Bubble { public void Sort(int[] arrays){ 阅读全文
posted @ 2020-04-15 18:03 Coding-Liu 阅读(114) 评论(0) 推荐(0)
摘要: 题目描述 给定一个double类型的浮点数base和int类型的整数exponent。求base的exponent次方。 保证base和exponent不同时为0 思路分析: key1: 可以使用暴力法直接循环求得base的exponent次方 key2: 使用递归的快速幂运算,比如求base的32 阅读全文
posted @ 2020-04-14 10:57 Coding-Liu 阅读(120) 评论(0) 推荐(0)