Talks
Speakers
Events
Topics
Sign in
Home
Talks
Speakers
Events
Topics
Leaderboard
Use
Analytics
Sign in
Suggest modification to this talk
Title
Description
You have a good ol' Rails application that provides an API. That app is gaining momentum and getting tons of new users every day. You need to double the servers to accommodate the infrastructure to the demand. Then, you get the bill from your cloud service provider and... THE HORROR!! Is big enough to make you cry. Well, here comes Goliath. A very tiny, well designed and FAST non-blocking IO server that will put a big smile in your face, since you're going to need much less money to serve the same (or more!) requests per second. A real case scenario, a social gaming application for mobile devices, will serve as guide to show you how good it is and how much progress can you make with just a little bit of work. From development tools and gems to deployment strategies, balancing and more, we'll show you how a resource consuming Rails API turns into a nimble and fast Goliath API. The real time Internet is calling, and Goliath will hurry to make you more real time than ever. Help us caption & translate this video! http://amara.org/v/FGdL/
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 this presentation at LA RubyConf 2013, Juan Pablo Genovese discusses the development of scalable APIs, particularly focusing on a transition from a resource-heavy Ruby on Rails API to a more efficient Goliath-based solution. He emphasizes the importance of scalability in the context of increasing user demand and the associated infrastructure costs. The following key points are highlighted: - **Introduction to APIs**: APIs are essential for integrating software, allowing developers to expose applications to the world and create collaborative services. - **Case Study**: Genovese presents an example involving a mobile game where user-uploaded videos led to rapid growth in requests, leading to inflated server costs under its existing Rails implementation. - **Challenges Encountered**: The project faced high operational costs due to an increasing number of user requests and a tight budget as a self-funded startup. - **Solution with Goliath**: The introduction of Goliath, a non-blocking I/O server, allowed for better efficiency in handling higher volumes of requests without the need for major language changes. It dramatically improved performance from 450 requests per second to over 1,300. - **Technological Stack**: The use of Beanstalk job queues for efficient task management and Couchbase database for data storage was also discussed, enabling seamless scalability. - **Refactoring and Integration**: The Rails API code was refactored to improve performance further, utilizing a more streamlined code base and enhancing integration with Goliath using Active Record. - **Performance Testing**: Through testing, it was verified that Goliath could handle heavy loads, and processing jobs per second improved from 40 to 200-250, ensuring a cost-effective scaling solution. - **Final Thoughts**: Genovese concludes that Goliath’s community support and the correct technology stack are vital for achieving the desired scalability without incurring prohibitive costs. He also highlights the benefits of stateless token management for enhanced performance. Overall, this presentation offers insights into optimizing API performance and managing costs efficiently through the adoption of Goliath, making it relevant for developers facing similar scaling challenges.
Suggest modifications
Cancel