Foundations of Scalable Systems: Designing Distributed Architectures (Paperback)

Gorton, Ian

  • 出版商: O'Reilly
  • 出版日期: 2022-08-09
  • 定價: $2,100
  • 售價: 8.0$1,680 (限時優惠至 2024-04-28)
  • 語言: 英文
  • 頁數: 337
  • 裝訂: Quality Paper - also called trade paper
  • ISBN: 1098106067
  • ISBN-13: 9781098106065
  • 相關分類: JVM 語言
  • 立即出貨

買這商品的人也買了...

商品描述

In many systems, scalability becomes the primary driver as the user base grows. Attractive features and high utility breed success, which brings more requests to handle and more data to manage. But organizations reach a tipping point when design decisions that made sense under light loads suddenly become technical debt. This practical book covers design approaches and technologies that make it possible to scale an application quickly and cost-effectively.

Author Ian Gorton takes software architects and developers through the principles of foundational distributed systems. You'll explore the essential ingredients of scalable solutions, including replication, state management, load balancing, and caching. Specific chapters focus on the implications of scalability for databases, microservices, and event-based streaming systems.

You will focus on:

  • Foundations of scalable systems: Learn basic design principles of scalability, its costs, and architectural tradeoffs
  • Designing scalable services: Dive into service design, caching, asynchronous messaging, serverless processing, and microservices
  • Designing scalable data systems: Learn data system fundamentals, NoSQL databases, and eventual consistency versus strong consistency
  • Designing scalable streaming systems: Explore stream processing systems and scalable event-driven processing

商品描述(中文翻譯)

在許多系統中,隨著使用者基數的增長,可擴展性成為主要的驅動力。吸引人的功能和高效用性帶來成功,進而帶來更多需要處理的請求和更多需要管理的數據。但是,當組織達到一個臨界點時,原本在輕負載下合理的設計決策突然變成技術債務。這本實用書介紹了能夠快速且具有成本效益地擴展應用程序的設計方法和技術。

作者Ian Gorton帶領軟體架構師和開發人員深入了解基礎分散式系統的原則。您將探索可擴展解決方案的基本要素,包括複製、狀態管理、負載平衡和緩存。具體的章節專注於可擴展性對數據庫、微服務和基於事件的流式處理系統的影響。

您將專注於以下內容:

- 可擴展系統的基礎:學習可擴展性的基本設計原則、成本和架構權衡
- 設計可擴展服務:深入研究服務設計、緩存、異步消息、無伺服器處理和微服務
- 設計可擴展數據系統:學習數據系統的基本原則、NoSQL數據庫以及最終一致性與強一致性的區別
- 設計可擴展流式處理系統:探索流式處理系統和可擴展的事件驅動處理