
Ruby Performance Optimization
Description
Alles über E-Books | Antworten auf Fragen rund um E-Books, Kopierschutz und Dateiformate finden Sie in unserem Info- & Hilfebereich.
You don''t have to accept slow Ruby or Rails performance. In this comprehensive guide to Ruby optimization, you''ll learn how to write faster Ruby code--but that''s just the beginning. See exactly what makes Ruby and Rails code slow, and how to fix it. Alex Dymo will guide you through perils of memory and CPU optimization, profiling, measuring, performance testing, garbage collection, and tuning. You''ll find that all those "hard" things aren''t so difficult after all, and your code will run orders of magnitude faster. This is the first book ever that consolidates all the Ruby performance optimization advice in one place. It''s your comprehensive guide to memory optimization, CPU optimization, garbage collector tuning, profiling, measurements, performance testing, and more. You''ll go from performance rookie to expert. First, you''ll learn the best practices for writing Ruby code that''s easy not only on the CPU, but also on memory, and that doesn''t trigger the dreaded garbage collector. You''ll find out that garbage collection accounts for 80% of slowdowns, and often takes more than 50% of your program''s execution time. And you''ll discover the bottlenecks in Rails code and learn how selective attribute loading and preloading can mitigate the performance costs of ActiveRecord. As you advance to Ruby performance expert, you''ll learn how profile your code, how to make sense out of profiler reports, and how to make optimization decisions based on them. You''ll make sure slow code doesn''t creep back into your Ruby application by writing performance tests, and you''ll learn the right way to benchmark Ruby. And finally, you''ll dive into the Ruby interpreter internals to really understand why garbage collection makes Ruby so slow, and how you can tune it up. What You Need: Some version of Ruby. The advice from this book applies to all modern Ruby versions from 1.9 to 2.2. 80% of the material will also be useful for legacy Ruby 1.8 users, and there is 1.8-specific advice as well.
More details
Other editions
Additional editions

Content
- Cover
- Table of Contents
- Preface
- The Need for Speed
- How to Read This Book
- Acknowledgments
- 1. What Makes Ruby Code Fast
- What Makes Ruby Code Slow
- Optimize Memory
- Get Into the Performance Mind-set
- 2. Fix Common Performance Problems
- Save Memory
- Optimize Your Iterators
- Write Less Ruby
- Takeaways
- 3. Make Rails Faster
- Make ActiveRecord Faster
- Make ActionView Faster
- Takeaways
- 4. Profile
- Measure with Ruby-Prof
- Visualize with Ruby-Prof Printers
- Visualize with KCachegrind (QCachegrind)
- Takeaways
- 5. Learn to Optimize with the Profiler
- Optimize but Don't Break
- Pick Low-Hanging Fruit
- Take a Step Back
- Takeaways
- 6. Profile Memory
- Detect Excessive Memory Usage
- Profile Memory with Ruby-Prof
- Measure Memory Yourself with GC#stat and GC::Profiler
- Takeaways
- 7. Measure
- Minimize External Factors
- Make Internals Behave Predictably
- Analyze and Compare Measurements Using Statistics
- Takeaways
- 8. Test Performance
- Benchmark
- Assert Performance
- Report Slowdowns and Optimizations
- Test Rails Application Performance
- Takeaways
- 9. Think Outside the Box
- Cycle Long-Running Instances
- Fork to Run Heavy Jobs
- Do Out-of-Band Garbage Collection
- Tune Your Database
- Buy Enough Resources for Production
- Takeaways
- 10. Tune Up the Garbage Collector
- Understand How Ruby Uses Memory
- Know What Triggers GC
- Understand Why GC in Ruby 2.1 and 2.2 Is So Much Faster
- Tune Up GC Settings
- Takeaways
- Onward!
- Index
- - SYMBOLS -
- - DIGITS -
- - A -
- - B -
- - C -
- - D -
- - E -
- - F -
- - G -
- - H -
- - I -
- - J -
- - K -
- - L -
- - M -
- - N -
- - O -
- - P -
- - Q -
- - R -
- - S -
- - T -
- - U -
- - V -
- - W -
- - X -
- - Z -
System requirements
File format: PDF
Copy-Protection: Adobe-DRM (Digital Rights Management)
System requirements:
- Computer (Windows; MacOS X; Linux): Install the free reader Adobe Digital Editions prior to download (see eBook Help).
- Tablet/smartphone (Android; iOS): Install the free app Adobe Digital Editions or the app PocketBook before downloading (see eBook Help).
- E-reader: Bookeen, Kobo, Pocketbook, Sony, Tolino and many more (only limited: Kindle).
The file format PDF always displays a book page identically on any hardware. This makes PDF suitable for complex layouts such as those used in textbooks and reference books (images, tables, columns, footnotes). Unfortunately, on the small screens of e-readers or smartphones, PDFs are rather annoying, requiring too much scrolling.
This eBook uses Adobe-DRM, a „hard” copy protection. If the necessary requirements are not met, unfortunately you will not be able to open the eBook. You will therefore need to prepare your reading hardware before downloading.
Please note: We strongly recommend that you authorise using your personal Adobe ID after installation of any reading software.
For more information, see our eBook Help page.