Distributed Systems Principles and Paradigms

ISBN-10: 0132392275
ISBN-13: 9780132392273
Edition: 2nd 2007 (Revised)
List price: $196.00 Buy it from $20.32
This item qualifies for FREE shipping

*A minimum purchase of $35 is required. Shipping is provided via FedEx SmartPost® and FedEx Express Saver®. Average delivery time is 1 – 5 business days, but is not guaranteed in that timeframe. Also allow 1 - 2 days for processing. Free shipping is eligible only in the continental United States and excludes Hawaii, Alaska and Puerto Rico. FedEx service marks used by permission."Marketplace" orders are not eligible for free or discounted shipping.

30 day, 100% satisfaction guarantee

If an item you ordered from TextbookRush does not meet your expectations due to an error on our part, simply fill out a return request and then return it by mail within 30 days of ordering it for a full refund of item cost.

Learn more about our returns policy

Description: Today, virtually every computing system is part of a distributed system, or soon will be. Programmers, developers, and engineers need to understand the principles and paradigms underlying distributed systems -- and the real-world application of  More...

Used Starting from $82.89
what's this?
Rush Rewards U
Members Receive:
coins
coins
You have reached 400 XP and carrot coins. That is the daily max!
You could win $10,000

Get an entry for every item you buy, rent, or sell.

Study Briefs

Limited time offer: Get the first one free! (?)

All the information you need in one place! Each Study Brief is a summary of one specific subject; facts, figures, and explanations to help you learn faster.

Add to cart
Study Briefs
SQL Online content $4.95 $1.99
Add to cart
Study Briefs
MS Excel® 2010 Online content $4.95 $1.99
Add to cart
Study Briefs
MS Word® 2010 Online content $4.95 $1.99
Add to cart
Study Briefs
MS PowerPoint® 2010 Online content $4.95 $1.99

Customers also bought

Loading
Loading
Loading
Loading
Loading
Loading
Loading
Loading
Loading
Loading

Book details

List price: $196.00
Edition: 2nd
Copyright year: 2007
Publisher: Prentice Hall PTR
Publication date: 10/2/2006
Binding: Paperback
Pages: 704
Size: 7.25" wide x 9.75" long x 1.25" tall
Weight: 2.816
Language: English

Today, virtually every computing system is part of a distributed system, or soon will be. Programmers, developers, and engineers need to understand the principles and paradigms underlying distributed systems -- and the real-world application of these principles. Now, Andrew S. Tanenbaum -- one of the worlds most well-respected experts on networking and operating systems -- presents a complete introduction to distributed principles and paradigms. Joined by colleague Martin van Steen, Tanenbaum identifies the seven key principles of distributed systems, and presents extensive examples of each.This 2nd/e ofnbsp;Distributed Systems: Principles and Paradigmspresents in-depth coverage of every key aspect of distributed systems: communications, processes, naming, synchronization, consistency and replication, fault tolerance, and security. Each principle is introduced in its own chapter; subsequent chapters demonstrate real-world implementations of these principles in object-based systems, document-based systems, file-based systems, and coordination-based systems. Since each case study is organized around the authors seven key principles, readers will find it exceptionally easy to compare the systems under consideration.For all developers, software engineers, and architects who need an in-depth understanding of distributed systems.

Preface
Introduction
Definition of a Distributed System
Goals
Making Resources Accessible
Distribution Transparency
Openness
Scalability
Pitfalls
Types of Distributed Systems
Distributed Computing Systems
Distributed Information Systems
Distributed Pervasive Systems
Summary
Architectures
Architectural Styles
System Architectures
Centralized Architectures
Decentralized Architectures
Hybrid Architectures
Architectures Versus Middleware
Interceptors
General Approaches to Adaptive Software
Discussion
Self-Management in Distributed Systems
The Feedback Control Model
Example: Systems Monitoring with Astrolabe
Example: Differentiating Replication Strategies in Globule
Example: Automatic Component Repair Management in Jade
Summary
Processes
Threads
Introduction to Threads
Threads in Distributed Systems
Virtualization
The Role of Virtualization in Distributed Systems
Architectures of Virtual Machines
Clients
Networked User Interfaces
Client-Side Software for Distribution Transparency
Servers
General Design Issues
Server Clusters
Managing Server Clusters
Code Migration
Approaches to Code Migration
Migration and Local Resources
Migration in Heterogeneous Systems
Summary
Communication
Fundamentals
Layered Protocols
Types of Communication
Remote Procedure Call
Basic RPC Operation
Parameter Passing
Asynchronous RPC
Example: DCE RPC
Message-Oriented Communication
Message-Oriented Transient Communication
Message-Oriented Persistent Communication
Example: IBM's WebSphere Message-Queuing System
Stream-Oriented Communication
Support for Continuous Media
Streams and Quality of Service
Stream Synchronization
Multicast Communication
Application-Level Multicasting
Gossip-Based Data Dissemination
Summary
Naming
Names, Identifiers, and Addresses
Flat Naming
Simple Solutions
Home-Based Approaches
Distributed Hash Tables
Hierarchical Approaches
Structured Naming
Name Spaces
Name Resolution
The Implementation of a Name Space
Example: The Domain Name System
Attribute-Based Naming
Directory Services
Hierarchical Implementations: LDAP
Decentralized Implementations
Summary
Synchronization
Clock Synchronization
Physical Clocks
Global Positioning System
Clock Synchronization Algorithms
Logical Clocks
Lamport's Logical Clocks
Vector Clocks
Mutual Exclusion
Overview
A Centralized Algorithm
A Decentralized Algorithm
A Distributed Algorithm
A Token Ring Algorithm
A Comparison of the Four Algorithms
Global Positioning of Nodes
Election Algorithms
Traditional Election Algorithms
Elections in Wireless Environments
Elections in Large-Scale Systems
Summary
Consistency and Replication
Introduction
Reasons for Replication
Replication as Scaling Technique
Data-Centric Consistency Models
Continuous Consistency
Consistent Ordering of Operations
Client-Centric Consistency Models
Eventual Consistency
Monotonic Reads
Monotonic Writes
Read Your Writes
Writes Follow Reads
Replica Management
Replica-Server Placement
Content Replication and Placement
Content Distribution
Consistency Protocols
Continuous Consistency
Primary-Based Protocols
Replicated-Write Protocols
Cache-Coherence Protocols
Implementing Client-Centric Consistency
Summary
Fault Tolerance
Introduction to Fault Tolerance
Basic Concepts
Failure Models
Failure Masking by Redundancy
Process Resilience
Design Issues
Failure Masking and Replication
Agreement in Faulty Systems
Failure Detection
Reliable Client-Server Communication
Point-to-Point Communication
RPC Semantics in the Presence of Failures
Reliable Group Communication
Basic Reliable-Multicasting Schemes
Scalability in Reliable Multicasting
Atomic Multicast
Distributed Commit
Two-Phase Commit
Three-Phase Commit
Recovery
Introduction
Checkpointing
Message Logging
Recovery-Oriented Computing
Summary
Security
Introduction to Security
Security Threats, Policies, and Mechanisms
Design Issues
Cryptography
Secure Channels
Authentication
Message Integrity and Confidentiality
Secure Group Communication
Example: Kerberos
Access Control
General Issues in Access Control
Firewalls
Secure Mobile Code
Denial of Service
Security Management
Key Management
Secure Group Management
Authorization Management
Summary
Distributed Object-Based Systems
Architecture
Distributed Objects
Example: Enterprise Java Beans
Example: Globe Distributed Shared Objects
Processes
Object Servers
Example: The Ice Runtime System
Communication
Binding a Client to an Object
Static versus Dynamic Remote Method Invocations
Parameter Passing
Example: Java RMI
Object-Based Messaging
Naming
Corba Object References
Globe Object References
Synchronization
Consistency and Replication
Entry Consistency
Replicated Invocations
Fault Tolerance
Example: Fault-Tolerant Corba
Example: Fault-Tolerant Java
Security
Example: Globe
Security for Remote Objects
Summary
Distributed File Systems
Architecture
Client-Server Architectures
Cluster-Based Distributed File Systems
Symmetric Architectures
Processes
Communication
RPCs in NFS
The RPC2 Subsystem
File-Oriented Communication in Plan 9
Naming
Naming in NFS
Constructing a Global Name Space
Synchronization
Semantics of File Sharing
File Locking
Sharing Files in Coda
Consistency and Replication
Client-Side Caching
Server-Side Replication
Replication in Peer-to-Peer File Systems
File Replication in Grid Systems
Fault Tolerance
Handling Byzantine Failures
High Availability in Peer-to-Peer Systems
Security
Security in NFS
Decentralized Authentication
Secure Peer-to-Peer File-Sharing Systems
Summary
Distributed Web-Based Systems
Architecture
Traditional Web-Based Systems
Web Services
Processes
Clients
The Apache Web Server
Web Server Clusters
Communication
Hypertext Transfer Protocol
Simple Object Access Protocol
Naming
Synchronization
Consistency and Replication
Web Proxy Caching
Replication for Web Hosting Systems
Replication of Web Applications
Fault Tolerance
Security
Summary
Distributed Coordination-Based Systems
Introduction to Coordination Models
Architectures
Overall Approach
Traditional Architectures
Peer-to-Peer Architectures
Mobility and Coordination
Processes
Communication
Content-Based Routing
Supporting Composite Subscriptions
Naming
Describing Composite Events
Matching Events and Subscriptions
Synchronization
Consistency and Replication
Static Approaches
Dynamic Replication
Fault Tolerance
Reliable Publish-Subscribe Communication
Fault Tolerance in Shared Dataspaces
Security
Confidentiality
Secure Shared Dataspaces
Summary
Suggestions for Further Reading and Bibliography
Suggestions for Further Reading
Introduction and General Works
Architectures
Processes
Communication
Naming
Synchronization
Consistency and Replication
Fault Tolerance
Security
Distributed Object-Based Systems
Distributed File Systems
Distributed Web-Based Systems
Distributed Coordination-Based Systems
Alphabetical Bibliography
Index

×
Free shipping on orders over $35*

*A minimum purchase of $35 is required. Shipping is provided via FedEx SmartPost® and FedEx Express Saver®. Average delivery time is 1 – 5 business days, but is not guaranteed in that timeframe. Also allow 1 - 2 days for processing. Free shipping is eligible only in the continental United States and excludes Hawaii, Alaska and Puerto Rico. FedEx service marks used by permission."Marketplace" orders are not eligible for free or discounted shipping.

Learn more about the TextbookRush Marketplace.

×