Talks
Speakers
Events
Topics
Sign in
Home
Talks
Speakers
Events
Topics
Leaderboard
Use
Analytics
Sign in
Suggest modification to this talk
Title
Description
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 session from RubyKaigi 2024, Kay Sawada explores the integration of Ruby with WebAssembly, particularly focusing on the WASI interface and its applications in edge computing. The talk titled 'Turning CDN Edge into a Rack Web Server with Ruby' aims to demonstrate how Ruby applications can be migrated to Content Delivery Networks (CDNs) utilizing the capabilities of WebAssembly. Sawada begins by sharing his background in Ruby and the evolution of his gem developed a decade ago. Key points discussed include: - **WebAssembly and WASI Overview**: WebAssembly (WASM) can run both in browsers and outside of them via WASI. This allows developers to deploy applications directly on CDN networks, providing opportunities for enhanced content delivery and application performance. - **CDN Edge as a Platform**: Sawada discusses the functionality of a CDN, typically known for delivering static content but also capable of running dynamic applications at various global points of presence. - **Running Rack on CDN Edge**: The main objective is to run a Rack web server on the edge, enabling Ruby applications to operate without major code changes. Sawada outlines his process of adapting a blog application to utilize the CDN edge. - **Implementation Challenges**: The session details technical hurdles faced during the migration, such as the incompatibility of C extensions in a WebAssembly environment, which necessitated finding Ruby-only libraries. - **Comparative Performance Metrics**: Issues of performance are highlighted, noting that applications built with Ruby frameworks like Sinatra experienced longer load times compared to those using Go, underscoring the varying capabilities of different programming environments. - **Optimizing Ruby Applications**: Sawada addresses the size limitations of WebAssembly binaries and discusses the implementation of middleware for better integration with CDN architecture. **Conclusion**: Sawada encourages the audience to explore the potentials of Ruby in edge computing, sharing insights on the various obstacles encountered while showcasing paths for future improvement in Ruby WebAssembly projects. The session ends on a call to action for programmers to engage with the Ruby WebAssembly GitHub repository to unlock valuable resources and contribute to making Ruby more exciting in the WebAssembly realm.
Suggest modifications
Cancel