随笔分类 -  算法

递归调用和栈溢出
摘要:一、简介 栈溢出:Stack Overflow。对于每个程序,栈能使用的内存是有限的,一般是1M-8M,在程序编译时就已经决定了,程序运行期间不能改变。如果程序使用的栈内存超出最大值,就会发生栈溢出错误,程序会崩溃。 二、栈溢出的原因 因为每调用一个方法就会在栈上创建一个栈帧,方法调用结束后就会弹出 阅读全文

posted @ 2024-02-20 14:43 木乃伊人 阅读(197) 评论(0) 推荐(0) 编辑

算法【Hash算法总结】
摘要:一、简介 一致性哈希算法在1997年由麻省理工学院提出,是一种特殊的哈希算法,在移除或者添加一个服务器时,能够尽可能小地改变已存在的服务请求与处理请求服务器之间的映射关系 。一致性哈希解决了简单哈希算法在分布式哈希表( Distributed Hash Table,DHT) 中存在的动态伸缩等问题。 阅读全文

posted @ 2023-11-02 10:14 木乃伊人 阅读(47) 评论(0) 推荐(0) 编辑

算法【LRU 缓存淘汰算法】
摘要:一、简介 每次访问的时候需要去取内存里的数据,没取到就添加到内存,但是,又不想取到的内存是过于陈旧的。 LRU【缓存淘汰算法】:最近最少使用策略来管理内存数据。根据数据的历史访问记录来进行淘汰缓存,即假如数据最近被访问过,那么它以后被访问到的几率会更高,也就不会被淘汰。 注:Redis的缓存过期实现 阅读全文

posted @ 2023-11-01 15:56 木乃伊人 阅读(33) 评论(0) 推荐(0) 编辑

算法【ZAB 优先级的民主投票】
摘要:一、简介 ZAB(ZooKeeper Atomic Broadcast)算法是ZooKeeper为实现分布式协调而设计的,它是对Raft选主算法的一种改进,在拥有投票选举的维度下增加节点ID以及数据ID(数据的最新值)为参考。 二、说明 2.1、ZAB算法有3种角色: Leader:主节点 Obse 阅读全文

posted @ 2023-10-31 17:13 木乃伊人 阅读(88) 评论(0) 推荐(0) 编辑

算法【Raft 投票】
摘要:一、简介 Raft算法属于典型的多数派选主算法,谁获得的票数最多,谁就可以成为主节点。 二、说明 Raft算法选主中集群各个节点的角色有3种: Leader:主节点,同一时刻只有一个Leader节点,负责整个集群的节点间的协调和管理。 Candidate: 候选节点,只有角色为候选者的节点才可以被选 阅读全文

posted @ 2023-10-31 17:02 木乃伊人 阅读(200) 评论(0) 推荐(0) 编辑

算法【bully 霸道算法】
摘要:一、简介 bully算法,也叫霸道算法。遵循谁拳头大谁当老大原则,即集群中节点ID值最大的那个则会被选为主节点。 二、说明 bully算法在选主过程中,会涉及到以下三种消息: bully算法底层选主流程图: 【触发选主时机】 2.1、错误节点恢复。 2.2、检测到master节点发生故障,如上图: 阅读全文

posted @ 2023-10-31 16:53 木乃伊人 阅读(159) 评论(0) 推荐(0) 编辑

算法
摘要:一、递归算法 二、排序算法 三、冒泡排序, 四、选择排序 阅读全文

posted @ 2023-10-27 15:18 木乃伊人 阅读(6) 评论(0) 推荐(0) 编辑

算法-共识算法
摘要:一、Paxos 基础的Paxos算法包括如下三种:Basic Paxos、Multi Paxos、Fast Paxos Paxos将系统中的角色分为提议者 (Proposer),决策者 (Acceptor),和最终决策学习者 (Learner): 【Proposer】:提出提案(Proposal)。 阅读全文

posted @ 2023-10-23 17:20 木乃伊人 阅读(41) 评论(0) 推荐(0) 编辑

算法--hash取模
摘要:一、简介 hash算法常用于分布式缓存集群系统。一般3种:普通hash,一致性hash,hash槽。 场景:用户注册系统,用户数量会不断的增大,需要几个服务器共同存储。 二、普通hash算法 1、创建4个服务器【canister】,然后对注册的用户id hash取模。 2、使用这种hash取模数算法 阅读全文

posted @ 2023-10-17 10:04 木乃伊人 阅读(415) 评论(0) 推荐(0) 编辑

算法--雪花算法
摘要:一、简介 雪花算法【Snowflake】是一种分布式唯一ID生成算法。能够生成唯一的,有序列的,高可用的ID,常用于分布式系统中作为全局唯一标识符【GUID】。雪花算法生成的ID是一个64位的整数,其中高位是时间戳,中间位是机器ID,低位是序列号。 二、组成 1、1位符号位:0表示正数,1表示负数( 阅读全文

posted @ 2023-10-16 15:55 木乃伊人 阅读(872) 评论(0) 推荐(0) 编辑

< 2025年2月 >
26 27 28 29 30 31 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 1
2 3 4 5 6 7 8

导航

统计

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