Having the opportunity to read Professional Website Perfomance from Peter Smith, I decided to write a short review of it, because it quite impressed me. I believe that this topic is essential for the developers these days, although the book is primarily oriented towards web developers (as you can guess - according to it's title), the others can find some bit and pieces useful to them in relation to database optimisation. The book consists of two main parts and appendixes. First part is dedicated to frond ent / client side optimisation. Second part covers backend / server side, and is far much extensive. Three appendixes give overview of TCP protocol, tips on designing for mobile platforms and compare different compression methods.
Table of content:
PART I | FRONT END |
---|---|
CHAPTER 1 | Utilizing Client-Side Caching |
CHAPTER 2 | Utilizing Client-Side Caching |
CHAPTER 3 | Content Compression |
CHAPTER 4 | Keeping the Size Down with Minification |
CHAPTER 5 | Optimizing Web Graphics and CSS |
CHAPTER 6 | JavaScript,the Document Object Model, and Ajax |
PART II | BACK END |
---|---|
CHAPTER 7 | Working with Web Servers |
CHAPTER 8 | Tuning MySQL |
CHAPTER 9 | MySQL in the Network |
CHAPTER 10 | Utilizing NoSQL Solutions |
CHAPTER 11 | Working with Secure Sockets Layer(SSL) |
CHAPTER 12 | JavaScript,the Document Object Model, and Ajax |
PART III | APPENDIXES |
---|---|
APPENDIX A | TCP Performance |
APPENDIX B | Designing for Mobile Platforms |
APPENDIX C | MySQL in the Network |
I think, semi-experienced programmers - those who already have some experiences and crafted some small and medium web sites - will benefit from the book at most. They can learn how to improve and design effective web solution, so their projects are able to sustain large loads of traffic. There are chunks interested even for experienced programmers, and of course for those who did not work on the whole stack, or are more focused on one of the parts and would like to learn more about the other one. The book is not really suitable for beginner, there would be probably too many different new topics for them.
My job is to create large web applications for several years already, and there was a lot of stuff I already knew, still I found topics, I could dive in deeper or parts which were new to me. I consider this books as a asset and would recommend it for those who are looking for complete end-to-end reference of web applications optimisation covering the most important areas and principles how to do it.
Chapters I liked at most are:
- Utilizing Client-Side Caching
- Tuning MySQL
- Utilizing NoSQL Solutions