Inner Workings of Puma - Joshua Young. Ruby Melbourne Meetup January 2025
Автор: Ruby Australia
Загружено: 2025-02-18
Просмотров: 138
Join our next meetup! https://melbourne.ruby.org.au
Ruby Melbourne Meetup- 30 January 2025
Joshua Young (https://github.com/joshuay03) walks through how Puma actually works under the hood, starting with how Rails boots the server and moving into Puma's internal architecture. He explains that Puma operates in two modes: single mode with one process and thread pool, and cluster mode with multiple worker processes.
The talk covers several key features including the reactor thread that handles incomplete requests, load balancing mechanisms that prioritize idle workers, and the copy-on-write optimization in cluster mode. Josh demonstrates how the preload_app feature loads the application once in the master process before forking workers, allowing them to share memory for read-only data like Rails configuration. He also reveals some gotchas, like how this memory-saving feature was supposed to be enabled by default but only worked with certain configuration methods.
Throughout the presentation, Josh emphasizes the sophisticated engineering behind the simple rails server command that most developers use daily.
Доступные форматы для скачивания:
Скачать видео mp4
-
Информация по загрузке: