# How Request processing has changed over the years

DevFeed: [How Request processing has changed over the years](<https://devfeed.tech/articles/how-request-processing-has-changed-over-the-years-39633.md>)

Original publisher: [Read original article](<https://www.gauravsarma.com/posts/2025-02-03_How-Request-processing-has-changed-over-the-years>)

Published: 2025-02-03T00:00:00Z

Content type: article

Language: en

Sources: [Gaurav Sarma's Blog](<https://devfeed.tech/sources/gaurav-sarma-s-blog.md>)

Topics: [processing](<https://devfeed.tech/topics/processing.md>), [Computer science](<https://devfeed.tech/topics/computer-science.md>), [Concurrency](<https://devfeed.tech/topics/concurrency.md>), [scheduling](<https://devfeed.tech/topics/scheduling.md>), [Kernel](<https://devfeed.tech/topics/kernel.md>), [Processes](<https://devfeed.tech/topics/processes.md>), [Ruby](<https://devfeed.tech/topics/ruby.md>), [Python](<https://devfeed.tech/topics/python.md>)

Tags: [concurrency](<https://devfeed.tech/tags/concurrency.md>), [cpu](<https://devfeed.tech/tags/cpu.md>), [kernel](<https://devfeed.tech/tags/kernel.md>), [process](<https://devfeed.tech/tags/process.md>), [processing](<https://devfeed.tech/tags/processing.md>), [python](<https://devfeed.tech/tags/python.md>), [request](<https://devfeed.tech/tags/request.md>), [ruby](<https://devfeed.tech/tags/ruby.md>), [scheduling](<https://devfeed.tech/tags/scheduling.md>)

## AI overview

This article explains how web request processing works, distinguishing blocking and non-blocking tasks and introducing concepts such as CPU control, kernel behavior, and cooperative versus preemptive scheduling. It begins comparing request-processing architectures in the context of Ruby, Python, NodeJS, and Rails services.

## Source excerpt

. [How Request Processing Has Changed Over the Years](how-request-processing-has-changed-over-the-years-cover...