Skip to content
Scan a barcode
Scan
Paperback High-Performance Client/Server Book

ISBN: 0471162698

ISBN13: 9780471162698

High-Performance Client/Server

Learn from a master how to overcome performance bottlenecks and response time delays typical of large distributed systems. "Chris is one of the industry's most important thinkers on database design - I would strongly recommend this book to readers trying to get past the buzzwords and focus on what really makes a difference in achieving high-performance distributed systems." - David Stodder, Editor-in-Chief, Database Programming & Design Performance is not simply a matter of tuning the code or the computing environment - it starts with designing performance into the application from the outset, and spans all phases of the system life cycle. Drawing on his 25 years of experience, Chris Loosley explains the principles of software performance engineering and applies them to all facets of distributed systems architecture and design. Along the way, he summarizes his conclusions in over 250 useful, easily referenced guidelines. And he covers all the key topics, with chapters on Middleware, Architecture, Design, Tools, Databases, Replication, Warehousing, and Transaction Monitors. Loosley's conclusions about the architecture and design of enterprise systems challenge many current middleware trends. Applying the performance principles, Loosley explains why the key to creating truly scalable distributed systems is to decompose complex business applications into multitransaction workflows, and to use asynchronous data replication, parallel processing, and batching techniques.

Recommended

Format: Paperback

Temporarily Unavailable

We receive 1 copy every 6 months.

Customer Reviews

4 ratings

Rare focus on perfomance in software development

I found this book very helpful as I was developing a paper on improving performance for my company's enterprise application. It is the only book I could find that generically dealt with the techniques for designing applications with performance in mind. It covers a broad range of topics explaining the causes of performance problems and possible solutions. I particularly liked the realistic view of a "distributed" architecture which is a hot topic. I did have some problems relating to the "standard" architectures presented; none of them exactly matched the current popular standards like J2EE.

Brilliant, comprehensive, humerous, definitive treatment

Now that client-server is mainstream, it is OK to knock it. Specifically, performance problems arise with enterprise client-server systems due to the complexity of the distributed processing. The more hops between platforms, the more overhead, and the more points of failure. Client-server architecture is inherently distributed and often has to occur across multiple platforms connected by skinny wide area network (WAN) pipes. What can help? This wide-ranging diagnosis and treatment of the many aspects of the dilemma is highly recommended for its extent, depth, humor, and penetrating insight. Part One on performance fundamentals list 23 components of response time, offering incisive distinctions for both the beginner and the advanced practitioner. When cross-referenced in the extended application resource usage matrix to identify bottlenecks, these components become powerful drivers of response time tuning using trade-offs, choices, and priorities to squeeze every once of performance out of the available computing configuration. Part Two treats the software performance engineering process. One important goal is to build a performance model out of the hardware/software environments, application flow, data structures and business factors. In addition to complex interrelations of computing components, Loosley provides pointers to some very simple principles and methods for tuning complex systems. Part Three on principles is the heart of the book. Software engineering principles - formality, completeness, simplicity - provide the foundation for design principles of abstraction, decomposition, and information hiding - which, in turn, support refinement, independence, and localization (p. 207). These are explained and applied in sufficient depth and detail so that practicing performance engineers will find both helpful tips and techniques, amusing anecdotes, and theoretic principles. Queuing theory is explained but not treated mathematically other than the marshaling of a few simple metrics of practical interest. With the emergence of parallel processing as a relatively new candidate solution for decision support and data warehouse applications, the Chapter on The Parallelism Principle contains one of the best concise explanations I have seen in the literature of the differences between massive parallel processing, non-uniform memory architecture, and clusters as a processing resource. Part Four on Applications drills down into middleware and performance. The authors argue the concept of logical unit of work transaction management is sound and well proven in the world of host-centered (i.e., mainframe) computing. However, when the architecture of synchronous communications is transferred to distributed client-server, then problems arise. As soon as one of the multitude of processors waits, the entire system is at risk of log jamming. And since all computers wait at the same speed - both a hu

An outstanding overview of performance engineering.

This book should be required reading for all professional software systems engineers and software development engineers. It is an outstanding overview of the performance engineering discipline as it applies to client/server architectures. I am a practicing systems performance engineer with 20 years experience--10 in development and the last 10 in systems engineering. Many of the things I've learned through "experience" are included in this book. It is definitely worth the money.There is only one area which is not addressed in the book--how to apply SPE to one-of-a-kind complex multiprocessing/multitasking shared resource systems development which are without precedent (as far as I know this is not addressed anywhere in the literature). Such systems do not lend themselves to the preassigned quantitative software budgets required by the literal application of SPE. But because I am major proponent of designing in flexibility and performance all the other SPE principles certainly apply. Again, I highly recommend this book.

Find your way through current design & implementation issues

I came upon this book during my quest for some tools that would help me put some perspective on current software design and architecture issues. I am sure I was not alone in my efforts to understand the evolving client / server paradigm and the performance issues involved.I am a believer in the need to build performance into systems, that it can not be conveniently added afterwards. I also believe that scalability and adaptability are characteristics that result from good design. I was more than a little overwhelmed by all the marketing hype for the latest generation of Internet-related tools and the general level of discussion of "middleware". Then, I found this book!I was very pleased to see that the issues of partitioning logic across physical and functional layers were treated as equally important. The models proposed (a five-tier functional model spread over the traditional three-tier physical one) provide a very clear image of the role of the three main classes of middleware.In my opinion, this element of the book justifies the cost of the purchase many times over all by itself. The inevitable and inexorable evolution of the client / server model is well documented and the conclusions are well justified. The newest model is very pertinent to the issues being faced by architects everywhere and does a much better job of separating the data locality issues from the similar issues related to the granularity and coupling of the application logic in modern computing environments.The role of the Internet technologies in enabling and driving this evolution is clearly described. The authors also provide a background that will allow the reader to follow the future evolution of the model and the eventual introduction of still more functional layers with ease. The paradigm is, indeed, that powerful.The book manages to address two disparate audiences very well. First, readers such as myself looking for design and management background material on the topic are very well served. At the same time, practitioners will find very comprehensive summaries of much of the current state of knowledge in the field. There are supplemental reading lists which will lead the reader to more focused discussions of any specific topics that may require further detail.I would expect this book to prove to be very influential. It challenges several established notions about client / server architectures which have led many shops to struggle with their implementations. The proposed model, properly applied, should lead to more robust designs that will prove to be more scaleable and adaptable than many we have seen.Highly Recommended!
Copyright © 2025 Thriftbooks.com Terms of Use | Privacy Policy | Do Not Sell/Share My Personal Information | Cookie Policy | Cookie Preferences | Accessibility Statement
ThriftBooks ® and the ThriftBooks ® logo are registered trademarks of Thrift Books Global, LLC
GoDaddy Verified and Secured