`
wanglian
  • 浏览: 69345 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

牺牲一致性来换取分布式架构的可伸缩性

 
阅读更多

要在大型系统中实现一致性,你必须放弃ACID,转而使用BASE:
基本可用(Basically Available)
软状态(Soft state)
最终一致(Eventually consistent)

给一个为小规模应用而设计的架构增加资源并不能让它变成大规模的架构。

完整文章:
http://www.infoq.com/cn/news/2008/03/ebaybase
http://www.infoq.com/cn/news/2008/01/consistency-vs-availability

分享到:
评论

相关推荐

    分布式架构知识体系必读.docx

    分布式架构是现代大型互联网系统的核心组成部分,它允许应用程序在多台计算机之间分散工作负载,以提高可伸缩性、容错性和性能。微服务架构是分布式系统的一种具体实现,强调将应用程序拆分为一组小型、独立的服务,...

    微服务数据一致性常见问题及解决方案共42页.pdf.zip

    - BASE理论:基本可用、软状态、最终一致性,允许一定程度的不一致以换取性能和可伸缩性。 - 幂等性设计:确保服务接收相同请求多次时,结果始终一致。 - 双写策略:同时更新多个服务的数据,但需处理好写入冲突...

    分布式-CAP与ACID原则

    例如,对于那些对数据一致性要求极高的应用,如金融交易系统,可能会倾向于选择CP模型,即牺牲一定的可用性来换取更强的数据一致性;而对于那些更注重用户体验和高可用性的应用,如社交网络平台,可能会倾向于选择AP...

    ebay archtecture

    eBay选择在不影响核心业务流程的情况下,适当牺牲事务的一致性,以换取更高的可伸缩性和可用性。这可能涉及到补偿事务、最终一致性或其他异步解决方案,以确保系统在大规模并发下的稳定运行。 总之,eBay的架构设计...

    大规模网站架构.ppt

    首先,语言的选择并非决定网站架构可伸缩性的关键,更重要的是架构设计本身。例如,Facebook、Yahoo选择了PHP,淘宝和网易使用Java,Google则采用Python,MySpace则基于.NET。这些案例表明,无论哪种编程语言,都...

    大规模网站架构介绍.pptx

    总结来说,大规模网站架构设计需要关注高可用性、可伸缩性和高性能,并在CAP理论的指导下选择合适的事务策略。数据库的读写分离和分片技术是优化性能的关键手段,而数据访问层的代理和API则为这些技术提供了实现途径...

    大规模网站架构祥细教程

    为了提高可伸缩性和性能,新的事务策略如BASE(基本可用、软状态、最终一致)被采用,它避免了分布式事务的复杂性,牺牲了一致性来换取更高的可用性和扩展性。 数据库设计是架构中的核心部分。**读写分离**通过使用...

    分布式容错

    复制分为同步复制和异步复制,前者保证所有副本数据一致,后者则牺牲一致性换取性能。 5. **分区容错**: - 分区容错是分布式系统设计中的重要概念,尤其是在网络延迟或分区问题发生时,系统应设计成能够容忍这些...

    经典大规模网站架构.ppt

    新的事务策略——BASE(基本可用、软状态、最终一致)策略应运而生,它倾向于牺牲强一致性,以换取更高的系统可用性和扩展性。 数据库优化是提升大规模网站性能的关键。读写分离是一种常见策略,通过MySQL Proxy等...

    网站架构设计 教你进入架构设计

    然而,在分布式系统中,CAP理论指出一致性、可用性和分区耐受性只能满足其中两项,这促使开发者采用BASE(基本可用、软状态、最终一致)策略,牺牲强一致性以换取系统的高可用性。 数据库的读写分离是提高性能的一...

    大规模Web网站的架构

    总结来说,构建大规模Web网站架构需要综合考虑多种技术,包括但不限于高可用性设计、可伸缩性策略、事务管理、数据库优化以及分片策略,以确保系统能够处理海量用户并发访问,同时保持高效和稳定。

    NoSQL数据库笔谈.pdf

    在大规模分布式环境下,通常会牺牲一致性来换取高可用性和分区容忍性。 接着,文章介绍了最终一致性(Eventual Consistency)及其变体,这是一种弱一致性模型,允许在一段时间后数据达到一致,而不是立即一致。此外...

    CAP Twelve Years Later: How the“Rules” Have Changed

    例如,通过引入多版本并发控制(MVCC)、事件最终一致性等方式来提高系统的可伸缩性和灵活性。 #### 结论 随着时间的推移和技术的进步,我们对 CAP 定理的理解和应用也在不断发展。现代系统设计不仅考虑到了网络...

    NOSQL实用讲义

    - 数据一致性:可能牺牲数据的一致性来换取性能。 - 查询复杂性:相比SQL,查询功能相对较弱。 - 工具和社区:相比于SQL,NOSQL的工具和社区相对较小。 总的来说,NOSQL数据库是应对大数据和高并发场景的有效解决...

    SQL、NoSQL、NewSQL 开发者如何应对

    但NoSQL数据库通常牺牲了一部分数据一致性和事务支持,以换取更高的性能和可伸缩性。 接着,NewSQL数据库是在SQL和NoSQL之间寻找平衡的一种尝试,它旨在保留SQL的事务处理能力和数据一致性,同时提升大数据环境下的...

    NoSQL精粹.pdf

    - **可伸缩性**:NoSQL通常采用分布式架构,可以轻松地进行水平扩展,以应对数据量和访问量的增长。 - **灵活性**:NoSQL支持动态模式,无需预定义数据结构,适应业务快速变化的需求。 - **高性能**:通过数据分片、...

    《大数据挑战-NoSQL数据库技术》读书笔记

    - **不具备ACID特性**:NoSQL数据库通常牺牲了事务的原子性、一致性、隔离性和持久性,以换取更高的伸缩性和性能。 #### 二、数据一致性理论 ##### 2.1 CAP理论 CAP理论由Eric Brewer于2009年提出,是NoSQL数据...

    网络游戏-存取网络系统.zip

    3. 服务器架构:常见的服务器架构有主从架构、分布式架构和微服务架构,根据游戏规模和并发量来选择合适的架构,保证系统的稳定性和可扩展性。 三、同步机制 1. 时间同步:网络游戏需要处理多个客户端之间的同步...

Global site tag (gtag.js) - Google Analytics