浅谈分布式系统与一致性协议(二)

九千⑦ 2023-02-14 21:56:18

Raft协议

Raft协议是斯坦福大学的Diego Ongaro和Jonhn Ousterhout在论文In Search of an Understandable Consensus Alogorithm中提出的,Raft算法比Paxos更易于理解,可以说是为了理解而生,这一点也可以从论文的名字察觉

Raft算法主要使用两种方法提高理解性,即

  • 问题分解
  • 减少状态空间
  • 问题分解

Raft算法将问题分解为领袖选举(leader election),日志复制(log replication),安全性(safety)和成员变化关系(membership changes)

领袖选举:在一个领袖节点发生故障后必须重新给出个新的领袖节点

日志复制:领袖节点从客户端接受操作请求,然后将日志复制到集群中的其他服务器,强制要求其他服务器的日志和自己的保持一致

安全性:Raft关键的安全特性是状态机安全原则(State Machine Safety),即如果一个服务器已经将给定索引位置的日志条目应用到状态机中,则其他服务器不会在该索引位置应用不同的条目

 

传送门:https://blog.csdn.net/weixin_43809223/article/details/107590426

...全文
773 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复
内容概要 本资源是一套完整可运行的 Qt Widgets 批量图片压缩桌面工具源码,基于 Qt5/C++ 从零开发,专为初学者设计,分步实现图片批量处理全套功能。工具支持多选单张图片、直接读取整个文件夹内所有 JPG/PNG 图像,可自定义输出图片分辨率、调节 JPG0~100 区间压缩质量,自带锁定宽高比防拉伸变形功能;批量处理完成后自动统计每张图片压缩前后文件体积,计算整体压缩缩小比例,直观展示压缩效果。 适用人群 Qt/C++ 零基础初学者,学习 QImage 图像绘图、文件目录遍历、UI 交互开发; 需要本地批量处理图片的办公、设计、自媒体从业者; 想要学习图片缩放、JPG 压缩、本地文件 IO、进度条交互的开发学习者。 使用场景 自媒体批量压缩配图,降低图片体积节省上传流量; 摄影、设计批量统一图片尺寸,批量轻量化相册图片; 程序开发学习:QFileDialog 文件选择、QDir 文件夹遍历、QImage 缩放保存、QSlider 参数联动、批量循环界面防卡顿、文件大小格式化转换全套 Qt 图像开发实战案例。 工具核心功能清单 双模式导入图片:手动多选单张图片 / 一键读取整个文件夹全部图片; 自定义输出宽高分辨率,支持锁定原始宽高比,避免图片拉伸变形; 滑块调节 JPG 压缩质量 0~100,平衡图片清晰度与文件占用大小; 自定义输出保存目录,批量生成压缩后的图片文件; 实时进度条展示处理进度,循环中刷新界面,程序不会假死卡顿; 自动统计每张图片压缩前后体积,换算 KB/MB 直观展示; 批量完成弹窗汇总:图片总数、成功数量、单张大小对比、整体压缩节省空间比例; 完整模块化代码,功能拆分清晰,每段代码附带详细注释,新手可分步拆解学习。 其他说明 开发环境:Qt Creator + Qt5.15 MSVC,Windows 平台可直接编译运行; 源码结构清晰,功能

7,834

社区成员

发帖
与我相关
我的任务
社区描述
欢迎大家加入社区,希望大家可以将自己的优质学习笔记分享在社区中,互相学习
javac++python 个人社区 天津·滨海新区
社区管理员
  • -BoBooY-
  • 会洗碗的CV工程师
  • .29.
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧