CAP理论

C-一致性(一般指强一致性)

A-可用性(常见指标TP999)

P-分区容错性

其中一致性与可用性存在矛盾,需要开发者根据实际业务取舍

一致性解决方案--Raft算法

原理是将集群中所有服务归为三类角色,leader(领导者),follower(选举者),condidate(参选者),一个集群有且仅有一个leader,当leader正常工作时,系统只有leader和follower两个角色。

当leader宕机时,会有一部分follower转变成condidate竞选leader,其他follower会投票选出一台作为新leader

一致性的脑裂及相应的解决方案Lease原理

脑裂:当集群中leader宕机,其他follower选出新leader后,宕机的leader恢复了服务(可能还携带自己的follower回到集群),那此时集群就有两个leader并各自有自己的follower,这种类似一个大脑分裂成两部分的现象叫做脑裂

Lease:废弃Raft选举制,改为定时下发命令某服务器为leader,这样保证了有且只有一个leader,但风险是当leader宕机,在下一次指定leader命令下发前,系统处于无leader状态,服务不可用

数据库设计

系统架构设计知识梳理--分布式架构相关推荐

  1. Java企业级应用架构设计中的分布式结构

    Java企业级应用架构设计中的分布式结构 2010-12-24 13:54:12|  分类:默认分类 |  标签:|字号大中小 订阅 Java企业级应用架构设计是每个Java开发者不必学的知识,本文将 ...

  2. 阿里P8架构师谈:分布式架构设计12精讲

    分布式架构设计包含: 分布式缓存 分布式消息中间件 分库分表.读写分离 单点登录等 想成为阿里160万年薪的P8架构师?你必须掌握如下6大技能体系! 阿里P8架构师谈:分布式架构系统拆分原则.需求.微 ...

  3. 分布式架构设计之基础软件系统架构

    分布式架构设计之基础软件系统架构 原创文章来之不易,转载请注明出处: http://blog.csdn.net/why_2012_gogo/article/details/74137631 一个好的系 ...

  4. 系统架构设计方法-5-技术架构设计篇

    技术架构设计工作内容 技术架构主要包括两大部分:软件-技术平台/组件.硬件-基础设施 主要是对应用和数据提供哪些可用资源 工作内容-1-分析平台组件的需求 输入(架构资产部分) 分析过程 输出模板和示 ...

  5. 阿里架构师,讲述分布式架构云平台解决方案(附学习路线)...

    技术架构 分布式架构云平台在充分分析IT技术发展趋势,遵循集中化.标准化.集成化.可靠化和可扩展化的设计原则,以价值创造为使命,以规范化.一体化.智能化的云平台为支撑,实现信息的透明共享.业务的敏捷协 ...

  6. 架构设计之如何写架构设计说明书

    架构设计是需求分析到软件实现的桥梁,也是决定软件质量的关键.编制架构设计说明书是开发人员向架构师转变必定会经历的过程.在架构师整个的成长过程中,必定会经历编制架构设计说明书.评审架构设计说明书以及根据 ...

  7. MySQL异步复制延迟解决的架构设计与运维架构ppt

    <MySQL异步复制延迟解决的架构设计与运维架构ppt> 下载地址:网盘下载 转载于:https://www.cnblogs.com/long12365/p/9731216.html

  8. [读书笔记]大型分布式网站架构设计与实践.分布式缓存

    前言:本书是对分布式系统架构涉及到的相关技术的一本科普书籍.由于很难作为开发参考,只能但求了解.所以通篇浅读,对分布式系统进行大致的了解.因为写的非常好,感觉非常有意思,自己也做不出总结.所谓的读书笔 ...

  9. 系统架构设计方法-4-数据架构设计篇

    数据架构设计工作内容 数据分布:数据实体和应用的对应关系 个人感觉:这里面写数据流转不太妥,流传应该都是应用层面来完成的.应用和数据之间的读写关系的组合. 工作内容-1-确定数据域 系统架构设计模板和 ...

最新文章

  1. 零基础学习Java培训有什么攻略
  2. C++类的信息隐藏机制
  3. Android安全教程(3)---Fiddler简易使用教程之抓取https包
  4. Python实训day06am【网络爬虫(爬取接口)】
  5. LeetCode之Longest Common Prefix
  6. 40-400-035-运维-优化-pt-variable-advisor优化工具
  7. 《统计学习方法》—— 感知机对偶算法、推导以及python3代码实现(二)
  8. spring boot 教程(三)配置详解
  9. 批量增加dns 条件转发器
  10. UMLChina公众号文章精选(20220126更新精选)
  11. 编码器和译码器(数电实验报告)
  12. 完整性校验用到常见的算法_文件完整性校验
  13. java calendar时间计算_Java Calendar计算所在时区的时间偏移量
  14. 注意力机制在视觉中的实战
  15. linux配置文件密码加密工具,Linux下利用openssl对文件进行加密和解密
  16. 使用python Mayavi 绘制矢量场图
  17. 我的世界Mod整合包中的Mod下载
  18. 量化交易5-backtrader编写均线策略
  19. ognl.NoSuchPropertyException(没有对应属性异常)
  20. 记录一次vue项目引入GoogleMap API进行地图定位

热门文章

  1. 最受欢迎的Python开源框架有哪些?
  2. 观察者(observer)模式(一)
  3. java的行业认证_Sun认证Java程序员考试介绍
  4. 【渝粤题库】广东开放大学 建筑测量 形成性考核
  5. Java判断经纬度点是否在给定区域内
  6. Gitee上传代码教程
  7. 基于企业微信机器人实现预警功能
  8. 大数据系统开发综合实践(一)
  9. 程序员的算法课(6)-最长公共子序列(LCS)
  10. C/C++语言二维数组的传参方法总结