Talks
Speakers
Events
Topics
Sign in
Home
Talks
Speakers
Events
Topics
Leaderboard
Use
Analytics
Sign in
Suggest modification to this talk
Title
Description
Facepalm to Foolproof: Avoiding Common Production Pitfalls by Jon McCartie "WTF asset pipeline?" "What are all these errors?" "Why is my app running so slow?" If you're new to Rails development, or just want some tips on deploying and running in production, this is the talk for you. Relying on real-world experience as part of the Heroku support team, we'll talk through common issues (and a few funny ones) we see when people take their "but it works in development!" app to a production environment. Help us caption & translate this video! http://amara.org/v/JUpI/
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 "Facepalm to Foolproof: Avoiding Common Production Pitfalls," presenter Jon McCartie shares insights from his experience at Heroku to help Rails developers navigate common issues they face when deploying applications in production. The talk focuses on several recurrent "facepalm" moments that can arise when transitioning from development to production environments. McCartie uses a fictional startup, Airless B&B, as a playful example to illustrate the various pitfalls developers might encounter. Throughout the presentation, he emphasizes the importance of understanding server configurations, application performance, and deployment practices. ### Key Points Discussed: - **Choosing the Right Web Server**: McCartie highlights the common mistake of using Webrick in production, recommending Puma for better concurrency and performance. - **Memory Management**: He explains the significance of monitoring memory use, particularly with too many workers leading to memory leaks and swapping issues, which severely impact performance. - **SSL and Security**: McCartie stresses the need for secure connections and how to effectively set up SSL in Rails applications. - **Using the Asset Pipeline**: He discusses the asset pipeline's role in managing file versions and the necessity of using Rails' built-in helpers to avoid common errors related to asset caching. - **Proper Logging Practices**: Highlighting the 12-factor application principles, he advocates for logging to standard output rather than local log files for better insight and management. - **Deployment Practices**: McCartie recommends using tools like Mina for fast and efficient deployments while avoiding issues associated with manual restart scripts. - **Secrets Management**: He explains how to securely manage credentials using environment variables or the `secrets.yml` file to prevent exposing sensitive data. - **Database Indexing**: The importance of proper database indexing is discussed, noting how it can drastically improve query performance. - **N+1 Query Problems**: He warns about performance issues caused by N+1 queries and offers solutions within Rails to mitigate this. - **Background Jobs**: McCartie emphasizes the use of background jobs for tasks that can cause delays in user experiences, such as sending SMS messages or processing uploads. ### Conclusion: The overarching message of McCartie's presentation is that debugging and optimizing Rails applications in production requires continuous learning and adapting to challenges. Developers should not be discouraged by failures but instead use them as learning experiences to architect better applications. By employing the tips shared in this talk, developers can enhance their app performance and user satisfaction as they ship their products. The presentation was delivered at RailsConf 2016 and is a valuable resource for both novice and experienced Rails developers alike.
Suggest modifications
Cancel