Rating:  Summary: Very valuable book Review: This is an excellent book, providing thorough coverage of performance analysis. Although this book is aimed at Java based sites, it would serve as a good primer for anyone learning how to tune a website with dynamic content. The authors assume the reader has only basic familiarity with internet technologies, and explains concepts as needed. After providing a basic theoretical grounding, the authors illustrate the concepts with a case study, going from simple to complex.The book is well-organized and thought out, and presents its information in an understandable, easy to follow fashion. I particularly like the inclusion of the test and capacity planning forms in the appendix. This gives readers the chance to put the information to work, instead of just giving case studies or presenting only theory. A highly recommended and informational book.
Rating:  Summary: Great book--and for more than just Java web app developers Review: What a great, pragmatic, deeply informative book. As a web application developer for 5 years and enterprise application developer for 20, I came to the book with considerable experience, yet I still learned a lot. And as a trainer and writer, I'm always looking for good books to recommend and this is one I do most highly. Important to note is that it's also valuable for those developing ASP, ColdFusion, or PHP web sites, because the performance analysis approaches used by the authors (and tool discussions) are rather generic. You don't really need to understand Java to benefit considerably from their excellent explanations of the fundamentals of web application performance analysis and tuning. That's not to take away from its unique value for Java developers. Clearly there are many specific aspects for them, but other developers will find that 80% of the book is perfectly useful and deeply informative. I rate a book by how many notes I take as tidbits of useful info. And though I've used several load testing tools and even given seminars on the subject, I still learned much in every chapter. /charlie
Rating:  Summary: Good vendor-neutral analysis Review: You have a website with problems. The front end is a set of http servers that invoke Java application servers to run servlets and JSPs. The servlets read and write, maybe via Enterprise Java Beans, to a relational database. The website might be financial (like eTrade), or a portal (like Yahoo), or an information site (like google), or a B2C commerce site (like Amazon) or a C2C (like eBay). You want to measure and improve key metrics like response time, throughput and caching. Security may also be important, but for efficiency, you only want to encrypt the minimum possible. You also probably have a firewall or two; in the latter case, you have a DMZ. And in this case, you often put the http servers inside the DMZ and the application servers and database behind the DMZ. Plus, you anticipate and hope for (and dread) heavy usage. So you also have a caching proxy server and router in the DMZ, where the router will load balance incoming requests to the http servers. So you have many different pieces of hardware and software, usually from multiple vendors. The database could be from Oracle or IBM or Sybase. The application servers could be IBM's Websphere or BEA's Weblogic or the freeware from jBoss. Perhaps the http servers are Apache freeware. The key business logic may be written in java and running on the application servers. There are tons of books on java. But how to test and optimise the entire system? Do you have to hire expensive consultants? Maybe not. Try first looking at this book. Written in fact by 3 IBM consultants. You might be thinking, "Is this some going to be some smarmy sales pitch?" Where the take home message is buy only IBM and you will achieve nirvana? The book does not unfold that way. The authors describe the various problems at a vendor neutral level. The examples (and screen captures) are drawn from several vendors. The writing is clear and rises above being buried in the minutae of specific code. The book is for both the programmer and the systems administrator. This is not really a programming book per se. Rather, it deals with test and design strategies for optimising those abovementioned metrics. Emphasis is placed on quantifying results and on incremental ramp up, where you install hardware and software in stages, measuring at each stage so that you isolate the effect of just that stage. Key issues like network bandwidth, network traffic analysis and vertical and horizontal scaling are the purview of sysadmins. If you are a sysadmin who knows some java, but that's not really your cup of tea, and are confronted with these issues, try this book. IBM, through its alphaworks division and Websphere, has one of the largest development efforts in java. (Comparable to Sun's, in fact.) This book is good evidence of that.
|