`
wbj0110
  • 浏览: 1553354 次
  • 性别: Icon_minigender_1
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

系统架构中的BASE思想

阅读更多

之前我在一篇blog中有提到一个例子,我称之为业务事务,其实可能定义有点偏颇,不过表达的意思很明确,即使用业务的方法来保证最终数据一致性,尽量避免使用分布式事务。
这几天我看到一篇文章,恍然大悟,才明白原来这种思想本来早就有了它的专业术语:BASE.
  这里我来和大家分享一下,BASE其实是下面三个术语的缩写:
     基本可用(Basically Available)
     软状态(Soft state)
     最终一致(Eventually consistent)
  
  它的思想是通过让系统放松对某一时刻数据一致性的要求来换取系统整体伸缩性和性能上改观。为什么这么说呢,缘由就在于大型系统往往由于地域分布和极高性能的要求,不可能采用分布式事务来完成这些指标,要想获得这些指标,我们必须采用另外一种方式来完成,这里BASE就是解决这个问题的办法。
   
   具体的理论基础,我也就不说了,这里我给大家推荐几篇更专业一点的文章,大家自己去研究研究吧:
   
   1.  http://www.infoq.com/cn/news/2008/03/ebaybase 很好的以ebay为例子的BASE介绍
   2.  http://www.ccs.neu.edu/groups/IEEE/ind-acad/brewer/index.htm 专门介绍BASE的PPT
   3.  http://www.infoq.com/cn/articles/ebay-scalability-best-practices 说起ebay,那我就推荐一个和base无关的,他的 架构介绍吧
   4. http://www.infoq.com/cn/interviews/fengdahui-database-architecture  这个是支付宝数据库架构师冯大辉先生的见解

分享到:
评论

相关推荐

    OneBase v1.3.4

    OneBase是一个免费开源的,快速、简单的面向对象的应用研发架构,是为了快速研发应用而诞生的。在保持出色的性能和新颖设计思想同时,也注重易用性。遵循Apache2开源许可协议发布,意味着你可以免费使用OneBase,...

    OneBase v1.3.4.zip

    OneBase是一个免费开源的,快速、简单的面向对象的应用研发架构,是为了快速研发应用而诞生的。在保持出色的性能和新颖设计思想同时,也注重易用性。遵循Apache2开源许可协议发布,意味着你可以免费使用OneBase,...

    OneBase网站系统

    OneBase是一个免费开源的,快速、简单的面向对象的应用研发架构,是为了快速研发应用而诞生的。在保持出色的性能和新颖设计思想同时,也注重易用性。遵循Apache2开源许可协议发布,意味着你可以免费使用OneBase,...

    ts-base:用于演示TS技术和FE架构的样板TypeScript应用

    该项目是过去一年左右我非常喜欢的体系结构和库的裸机,自举版本。...图书馆此体系结构堆栈中的主要技术是: 打字稿ReactRedux Redux-Oberservables(RxJS) Webpack荣誉奖React路由器重新选择归一化国家管理现代Web应

    QT实验室管理系统-C/C++-数据结构课设

    实验室管理系统 本来之前是做一个文件管理系统,后面发展了很多功能就叫实验室管理系统了。 这边只是客户端展示。 介绍 界面用的QT 5.7,之前也没接触过直接上手写了。主要是实验室几个人一起写的,研一的时候有...

    淘宝软件基础设施构建实践 pdf

    接着,回顾淘宝图片存储与CDN系统的发展历史,如何从商用系统一步一步走到完全自主的系统,描述自主系统的主要架构与设计思想、性能指标和现有的部署规模,并总结一些经验来指导系统研发;然后,描述淘宝在软件基础...

    .net EXT学习资料与源码

     在软件体系架构设计中,分层式结构是最常见,也是最重要的一种结构。微软推荐的分层式结构一般分为三层,从下至上分别为:数据访问层、业务逻辑层(又或成为领域层)、表示层。  三层结构原理:  3个层次中,...

    淘宝软件基础设施构建PPT

    接着,回顾淘宝图片存储与CDN系统的发展历史,如何从商用系统一步一步走到完全自主的系统,描述自主系统的主要架构与设计思想、性能指标和现有的部署规模,并总结一些经验来指导系统研发;然后,描述淘宝在软件基础...

    毕业设计论文-企业员工信息管理系统.doc

    7 3.4 员工调动功能功能需求 7 3.5 用户管理功能需求 7 3.6 文件功能需求 7 第四章 系统总体设计方案 7 4.1 系统功能总体方案 7 4.2系统的目标 8 4.3 系统的设计思想 8 4.4 系统的功能模块结构 8 4.5 数据库的设计 9...

    SpringCloud-1

    } 如何理解CAP理论、BASE思想及在分布式系统中应用? } 如何理解RPC架构及其核心组件? } 如何对微服务架构实现技术选型? } 如何确保服务可用和服务治理? } 如何实现服务之间的安全性管理和监控? } 如何完成从...

    基于PHP和MySql开发的图书管理系统源码+数据库+项目说明(个人毕设项目源码).zip

    后端采用MVC的思想,参考ThinkPHP框架的结构和思路,自己实现并封装了一个简单的MVC框架(View层使用了Smarty模板引擎) 后端使用的数据库工具类、验证码类、分页类均由自己实现并封装 可通过配置文件(Base/Conf.php)...

    Java思维导图xmind文件+导出图片

    分布式架构的基本理论CAP、BASE以及其应用 什么是分布式架构下的高可用设计 构架高性能的分布式架构 构建分布式架构最重要因素 CDN静态文件访问 分布式存储 分布式搜索引擎 应用发布与监控 应用容灾及机房...

    asp.net知识库

    C#中结构与类的区别 C#中 const 和 readonly 的区别 利用自定义属性,定义枚举值的详细文本 Web标准和ASP.NET - 第一部分 XHTML介绍 在ASP.NET页面中推荐使用覆写(Override)而不是事件处理(Event Handler) 常用...

    2020 DTC 数据技术嘉年华演讲PPT汇总.zip

    易鲸捷国产数据库在银行核心系统中的应用实战 构建满足业务海量存储和高并发的数据库设计与实践 openGauss数据库新特性和未来演进 新基建浪潮下的智能数据库 从同构到异构:DTS如何打破数据孤岛 新华三高可用开放...

    00018计算机应用基础复习资料.doc

    ERP):根据计算机和网络技术的发展趋势和企业对供应链管理的需要,描绘 出一整套企业管理系统体系标准,其实质是在MRPII基础上,适应全球市场竞争供应链管 理的需求,对企业资源全面管理的思想。 10、企业信息化:...

    C++程序设计基础实例教程

    4. 先进的模块化的程序设计思想 1.2 C++语言的发展 汇编语言 BCPL语言(Base compined Programing Language) 面向过程的C语言: C、Turbo C 面向对象的C语言:C++、C#、 Visual C++、 Visual C++.NET 1.3 面向...

    基于python+Flask+Paddle-ERNIE实现的的自动派单系统源码+项目说明.zip

    2. 我们目前还没有完全拆解分析ERNIE模型的源码及模型结构,暂时不能实现移植到Pytorch上用bert-base-chinese实现相似的功能。 API实现 我们使用了Flask轻量化Web框架实现了简单的Web API接口化。将模型导出为静态...

    人工智能推理.doc

    人工智能 智能决策支持系统和一般决策支持系统的主要区别在于学习 和推理,而学习和推理均是计算机科学中个人工智能(artificial intelligent,AI)研究的内容,因而我们可以说:IDSS = DSS + AI 人工智能是计算机技术...

Global site tag (gtag.js) - Google Analytics