【java八股文】之分布式系列篇
【java八股文】之MYSQL基础篇-CSDN博客
【java八股文】之JVM基础篇-CSDN博客
【java八股文】之Redis基础篇-CSDN博客
【java八股文】之Spring系列篇-CSDN博客
【java八股文】之分布式系列篇-CSDN博客
【java八股文】之Java基础篇-CSDN博客
【java八股文】之多线程篇-CSDN博客
1、什么是CAP BASE理论
1.1 CAP
- 一致性: 在分布式环境下,一致性是指数据在多个副本之间是否能够保持一致性的特性,等同于所有的节点访问同一份最新数据的副本。在一致性的需求下,当一个系统在数据一致的状态下执行更新操作后,应该保证数据仍然一致性的状态。
- 可用性:每次请求都能够保证正确的响应,但是不保证获取的数据为最新的数据。
- 分区容错性:分布式情况下在遇到任何的网络分区额故障的时候,仍然需要能够保证对外提供一致性和可用性的服务,除非是整个网络环境发生了故障。
1.2 BASE
- 基本可用:在分布式系统出现故障,允许损失部分的可用性(服务降级、页面降级)
- 软可用:允许分布式出现中间状态。而且中间状态不影响系统的可用性。这里的中间状态指的是data replication(数据备份节点)之间的数据更新可以出现延迟的最终一致性。
- 最终一致性:data replications 经过一段时间达到一致性。
2、重点协议CP(ZAB RAFT) AP( Distro)
2.1 强一致性
1、任意时刻,所有的节点数据都是一样的。
2、一个集群需要对外部提供强一致性,所以只要集群内部的某一个数据发生了改变,那么就需要等待集群内其他服务器的数据同步完成后,才能对外部提供访问。
3、保证了强一致性,务必会损耗可用性
2.2 弱一致性
1、系统中的某个数据被更新后,后续对该数据的读取操作可能会得到更新后的数值,也可能会得到更新前的数值
2、即使过来一段时间窗口,后续的读取也不能保证一致性
2.3 最终一致性
1、弱一致性的特殊形式,不保证在任意时刻节点上的同一份数据是相同的,但是随着时间的迁移,不同节点的同一份数据总是在趋向一致性变化
2、存储系统保证在没有新的更新的条件下,最终所有的访问都是最后更新的值
2.4 顺序一致性
1、任意一次读都能读到某个数据的最近一次写的数据
2、对其他节点之前的修改是可见的(已同步)且确定的,并且新的写入建立在已经达到同步的基础上
相关文章:
【java八股文】之分布式系列篇
【java八股文】之MYSQL基础篇-CSDN博客 【java八股文】之JVM基础篇-CSDN博客 【java八股文】之Redis基础篇-CSDN博客 【java八股文】之Spring系列篇-CSDN博客 【java八股文】之分布式系列篇-CSDN博客 【java八股文】之Java基础篇-CSDN博客 【java八股文】之多线程篇-CSDN…...
【CSCV】划分数据集
参考论文IEEE Xplore Full-Text PDF: 划分数据集时多了一个development set,如下图 先占个坑,看完论文再来填坑...
【面试合集】说说提高微信小程序的应用速度的手段有哪些?
面试官:说说提高微信小程序的应用速度的手段有哪些? 一、是什么 小程序启动会常常遇到如下图场景: 这是因为,小程序首次启动前,微信会在小程序启动前为小程序准备好通用的运行环境,如运行中的线程和一些基…...
uniapp——自定义导航栏的封装
为什么需要封装自定义导航 首先如果开发的是微信小程序,那么在安卓环境下导航栏标题是默认靠左对齐的(虽然你在微信开发者工具上看到的依旧是居中展示),而在ios环境则是居中展示的。很多时候我们需要对整个项目有一个主题色或者公…...
Halcon机器视觉和运动控制软件通用框架,24年1月最新版新增UI设计器,插件式开发,开箱即用 仅供学习!
24年1月更新 下载点我 此版本已经添加ui设计器。具体功能如上所示,可以自定义变量,写c#脚本,自定义流程,包含了halcon脚本和封装的算子,可自定义ui,通过插件形式开发很方便拓展自己的功能。 ui设计器...
WebGL简介以及使用
WebGL简介 WebGL(Web图形库) 是一种在没有使用插件的情况下在网页浏览器中渲染2D图形和3D图形的技术。它基于OpenGL ES,一个在嵌入式系统中广泛使用的图形API。WebGL通过HTML5的 <canvas> 元素直接在网页上实现图形渲染,使…...
导轨式信号隔离变送器比例阀门线性驱动器4-20mA/0-5V/0-10V转0-165mA/0-80mA/0-1A/0-2A/0-4A
主要特性 精度、线性度误差等级: 0.1、0.2、0.5 级4-20mA/0-5V/0-10V 等标准信号输入0~100mA/0~500mA/0~1A/0-5A 等电流信号输出0~1V(max 2A)/0~10V/0-24V(max 5A) 等电压信号输出信号输入/信号输出 3000VDC 隔离辅助电源:12V、15V 或 24V 直流单电源供…...
Windows:win11不同分辨率2块屏幕在扩展模式下小屏上边有黑边
摘要:电脑只有一个核显时,Windows11系统在扩展模式下接入2块不同大小的分辨率的显示器,设置高分辨率显示器为主显示器。这时低分辨显示器系统可以正确设置分辨率,但是在低分率显示器上边出现较宽黑边,通过手工在显示设…...
Jenkins-执行脚本案例-初步认识JenKins的使用
环境搭建 docker pull jenkins/jenkins:2.440 docker run -d -p 10240:8080 -p 10241:50000 -v /env/liyong/data/docker/jenkins_mount:/var/jenkins_home -v /etc/localtime:/etc/localtime --name jenkins jenkins/jenkins:2.440 #在挂载的目录下去修改仓库地址 vim hudson…...
Open CV 图像处理基础:(五)Java 使用 Open CV 的绘图函数
Java 使用 Open CV 的绘图函数 使用 Open CV 在 Java 中对图片使用绘图函数,分别绘制矩形、斜线、圆形、椭圆形以及添加文本 Java 使用 Open CV 的绘图函数 Java 使用 Open CV 的绘图函数函数绘制矩形绘制线绘制圆形绘制椭圆添加文本 代码示例Open CV 专栏导航 函…...
PostgreSQL之SEMI-JOIN半连接
什么是Semi-Join半连接 Semi-Join半连接,当外表在内表中找到匹配的记录之后,Semi-Join会返回外表中的记录。但即使在内表中找到多条匹配的记录,外表也只会返回已经存在于外表中的记录。而对于子查询,外表的每个符合条件的元组都要…...
开发规范及常用工具
一、定义对象规范 entity : 是与数据库一一对应的字段 vo : 返回给前端的视图对象 dto : 前端传过来的参数封装成dto,用于返回给前端的对象,一般用于查询操作。 POJO是DO/DTO/BO/VO的统称,禁止命名成xxxPOJO。 1、entity实体类与数据库中的字段一一对应…...
238.【2023年华为OD机试真题(C卷)】火星文计算(模拟-JavaPythonC++JS实现)
🚀点击这里可直接跳转到本专栏,可查阅顶置最新的华为OD机试宝典~ 本专栏所有题目均包含优质解题思路,高质量解题代码(Java&Python&C++&JS分别实现),详细代码讲解,助你深入学习,深度掌握! 文章目录 一. 题目-火星文计算二.解题思路三.题解代码Python题解代…...
如何通过openresty 限制国外Ip访问
参考代码 https://gitee.com/xiaoyun461/blocking-external-networks首先 需要的依赖: libmaxminddb https://github.com/maxmind/libmaxminddbmaxmind-geoip https://github.com/Dreamacro/maxmind-geoiplibmaxminddb 需要gcc编译,可用 Dockerfile …...
【Vue2】一个数组按时间分割为【今年】和【往年】俩个数组
一. 需求 后端返回一个数组,前端按时间维度将该数组的分割为【今年】和【往年】俩个数组后端返回的数组格式如下 timeList:[{id:1,billTime:"2024-01-10",createTime:"2024-01-10 00:00:00",status:0},{id:2,billTime:"2022-05-25"…...
解决鸿蒙APP的内存泄漏
解决鸿蒙(HarmonyOS)应用的内存泄漏问题需要采用一系列的策略和技术。与解决Android内存泄漏类似,以下是一些建议,希望对大家有所帮助。北京木奇移动技术有限公司,专业的软件外包开发公司,欢迎交流合作。 1…...
云原生专栏大纲
1. 私有云实战之基础环境搭建 2. 云原生实战之kubesphere搭建 3.云原生之kubesphere运维 4. 云原生之kubesphere基础服务搭建 5.云原生安全之kubesphere应用网关配置域名TLS证书 6.云原生之DevOps和CICD 7.云原生之jenkins集成SonarQube 8.云原生存储之Ceph集群 9.云原生存储之…...
robot_framework的robot语法与python脚本之间的语法转换
Robot Framework是一个开源的自动化测试框架,支持关键字驱动和数据驱动的测试方法。它具有简单易学的语法和丰富的库,可以与多种语言进行集成,包括Python。 1. robot 的关键字 Robot Framework 是一个用于自动化测试和自动化任务的开源框架…...
D1675滤波器和缓冲器用于单通道6阶高清视频滤波驱动电路,可提高视频信号性能
D1675单电源工作电压为2.5V到5V,是一款高清视频信号译码、编码的滤波器和缓冲器。与使用分立元件的传统设计相比,D1675更能节省PCB板面积,并降低成本以及提高视频信号性能。D1675集成了一个直流耦合输入缓冲器、一个消除带外噪声的视频编码器…...
Java18:网络编程
一.对象序列化: 1.对象流: ObjectInputStream 和 ObjectOutputStream 2.作用: ObjectOutputSteam:内存中的对象-->存储中的文件,通过网络传输出去 ObjectInputStream:存储中的文件,通过网络传输出去…...
本地Cookie管理新选择:Get-cookies.txt-LOCALLY完全指南
本地Cookie管理新选择:Get-cookies.txt-LOCALLY完全指南 【免费下载链接】Get-cookies.txt-LOCALLY Get cookies.txt, NEVER send information outside. 项目地址: https://gitcode.com/gh_mirrors/ge/Get-cookies.txt-LOCALLY 在浏览器日常使用中࿰…...
华为MateBook D 2018款升级Win11遇阻?手把手教你通过修改BIOS隐藏参数开启TPM2.0
华为MateBook D 2018款解锁Win11升级全攻略:深入BIOS底层参数调整实战 华为MateBook D系列作为商务本中的性价比代表,2018款用户近期在升级Windows 11时普遍遇到TPM 2.0无法启用的困扰。这台搭载第八代Intel处理器的设备其实完全具备TPM 2.0的硬件基础&a…...
别再花冤枉钱!手把手教你用Arduino+ESP32自制车机CAN模拟器(附开源代码)
用ArduinoESP32打造高性价比CAN总线模拟器:从硬件搭建到报文解析全指南 在汽车电子和工业控制领域,CAN总线作为可靠的通信标准已经存在三十余年。面对市面上动辄上千元的商业CAN模拟器,许多开发者、学生和DIY爱好者常常望而却步。实际上&…...
如何利用Deep SORT实现稳定高效的多目标追踪
如何利用Deep SORT实现稳定高效的多目标追踪 【免费下载链接】deep_sort Simple Online Realtime Tracking with a Deep Association Metric 项目地址: https://gitcode.com/gh_mirrors/de/deep_sort 在计算机视觉的实际应用中,多目标追踪一直是一个技术难点…...
从`find -mtime`到`find -newermt`:Linux文件时间查找的进阶玩法与避坑指南
从find -mtime到find -newermt:Linux文件时间查找的进阶玩法与避坑指南 在Linux系统管理中,文件查找是开发者和运维工程师的日常高频操作。当我们需要追踪最近修改的配置文件、清理过期日志或备份特定时间段的文档时,find命令的时间参数便成为…...
拒绝纸上谈兵!深度拆解 hello-agents:从零开始构建你的第一个智能体 (AI Agent)
发布日期: 2026-02-10标签: #AIAgent #智能体 #Datawhale #大模型 #Python #人工智能入门一、 引言如果说 2024 年是大模型的元年,那么 2026 年则是 AI Agent(智能体) 的应用爆发年。单纯的对话已经无法满足需求&#…...
精通 Harness架构 :DeerFlow 2.0 的 lead_agent 任务总调度 架构设计与实现解析
今天不聊虚的,我们直接切进核心代码。 看看它是怎么把责任链模式、配置驱动思维和任务编排哲学,严丝合缝地揉进 LangGraph 骨架里的。顺便对标一下微软 AutoGen AG2 最新的架构演进,你会发现,行业对 Agent 运行时(Age…...
ComfyUI-FramePackWrapper:8GB显存也能流畅生成高质量AI视频的终极方案
ComfyUI-FramePackWrapper:8GB显存也能流畅生成高质量AI视频的终极方案 【免费下载链接】ComfyUI-FramePackWrapper 项目地址: https://gitcode.com/gh_mirrors/co/ComfyUI-FramePackWrapper 你是否曾因显存不足而无法体验AI视频生成的魅力?现在…...
Python自动化数据简报:从零构建代码驱动的报告系统
1. 项目概述:数据简报的“瑞士军刀”在数据驱动的时代,无论是数据分析师、产品经理还是业务运营,每天都要面对海量的数据源和复杂的分析需求。我们常常陷入这样的困境:为了一个简单的数据洞察,需要打开多个工具&#x…...
MUMmer4:基因组比对领域的终极解决方案
MUMmer4:基因组比对领域的终极解决方案 【免费下载链接】mummer Mummer alignment tool 项目地址: https://gitcode.com/gh_mirrors/mu/mummer 在基因组学研究领域,高效、准确的序列比对工具是解开生命密码的关键钥匙。MUMmer4作为一款开源的快速…...
