Talks
Speakers
Events
Topics
Sign in
Home
Talks
Speakers
Events
Topics
Leaderboard
Use
Analytics
Sign in
Suggest modification to this talk
Title
Description
Database Performance at Scale for RoR Applications by Rocio Delgado We love Ruby on Rails because we can get a working prototype up and running in a very short period of time. It follows coding conventions that make it simple to go from one developer to the next, however, when the application scales to a certain point, there are some performance penalties that come from the auto-magic of Active Record. I intend to show the common pitfalls for performance degradation, monitoring tools to help identify problems and common solutions including MySQL indexing optimization, all this based on my current experience with one of the biggest RoR apps working at GitHub. Help us caption & translate this video! http://amara.org/v/PssJ/
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 video 'Micro Talk: Database Performance at Scale for RoR Applications,' Rocio Delgado, a platform engineer at GitHub, discusses the importance of optimizing database performance when building Ruby on Rails (RoR) applications. She highlights that while RoR facilitates rapid prototyping, performance issues can arise as applications scale, impacting user experience and team productivity. Key points include: - **Team Responsibility:** Performance should be a collective responsibility across the organization—not just for engineers. This requires proper processes, tools, and infrastructure for monitoring and automation. - **Monitoring Tools:** Rocio emphasizes the use of tools like Deployable for metric tracking and Graph for visual performance monitoring. These tools improve accessibility to performance data and enhance team collaboration, especially in remote work settings. - **Common Pitfalls:** Two prevalent performance issues are N+1 queries and poor indexing. N+1 queries occur when associated data is inefficiently retrieved, while poor indexing can lead to decreased performance for reads and writes. - **Eager Loading:** To mitigate N+1 queries, using eager loading with the 'includes' method is a simple yet effective solution. - **Indexing Strategies:** Strategies for indexing include maintaining a balance to avoid performance hits during writes while ensuring that necessary indexes are present for read operations. Tools like New Relic help identify queries that require optimization. - **Proactive Measures:** Tools such as Haystack can be used to track query performance, allowing teams to adjust their indexing strategies in response to detected issues. - **Testing Changes:** Adopting tools like Hebert enables testing of new indexing strategies in staging before applying them to production, ensuring that performance remains stable. - **Cultural Shift:** Rocio underscores the necessity of fostering a performance-centric culture within the team, where everyone plays a part in maintaining database efficiency. In conclusion, Rocio urges developers to take proactive measures and consider the implications of their architectural decisions on performance. By doing so, teams can avoid potential issues and create more responsive applications. The video serves as a comprehensive guide to enhancing database performance for RoR applications, encouraging teams to continuously optimize their systems for better user experiences.
Suggest modifications
Cancel