Talks
Speakers
Events
Topics
Sign in
Home
Talks
Speakers
Events
Topics
Leaderboard
Use
Analytics
Sign in
Suggest modification to this talk
Title
Description
RailsConf 2018: Turbo Boosting Real-world Applications by Akira Matsuda One day I joined a team maintaining a huge, legacy, and slow Rails app. We thought that we have to optimize the application throughput for the user happiness, and so we formed a task force that focuses on the performance. Now, here's the record of the team's battle, including how we inspected and measured the app, how we found the bottlenecks, and how we tackled each real problem, about the following topics: Tuning Ruby processes Finding slow parts inside Rails, and significantly improving them Fixing existing slow libraries, or crafting ultimately performant alternatives
Date
Summarized using AI?
If this talk's summary was generated by AI, please check this box. A "Summarized using AI" badge will be displayed in the summary tab to indicate that the summary was generated using AI.
Show "Summarized using AI" badge on summary page
Summary
Markdown supported
In the presentation 'Turbo Boosting Real-world Applications' at RailsConf 2018, Akira Matsuda discusses optimizing performance in large, legacy Rails applications. The focus lies not only on application code but also on the Rails framework itself. The key points covered include: - **Performance Bottlenecks**: As applications grow, performance issues arise, often due to blocking operations and inefficient component interactions. - **Non-blocking Operations**: Matsuda emphasizes the significance of making API calls and database queries non-blocking to reduce waiting times, highlighting a 'future pattern' approach by utilizing threads to handle operations in the background. - **Optimizing Database Queries**: He introduces strategies to improve database interaction by sharing connections across threads and using connection pools effectively. - **Action Views**: He addresses the performance of rendering partial templates, advocating for using concurrent rendering to reduce wait times in view processing. - **Lazy Attributes**: The presentation emphasizes tweaking attribute accessors in Active Record to improve response times significantly by minimizing method call overhead. - **Named URLs**: The speaker identifies named URLs as a performance drain and suggests caching mechanisms as a solution. Matsuda supports his technical points with practical examples from his experience and explorations within the Rails framework, detailing potential optimizations and sharing code snippets on GitHub for further exploration. His main takeaways stress the importance of identifying slow components within the framework, the complexity of thread programming, and the necessity of proactive performance hacking. He concludes with an encouragement to embrace these performance improvements in production environments and the future development of Rails frameworks.
Suggest modifications
Cancel