# request

Published articles for request.

This is one page of public article previews, not the complete archive. Follow Next page to continue. Summaries are not the original full articles.

## Khan Academy Uses Local Storage and Request Queues to Handle Offline Actions

DevFeed: [Khan Academy Uses Local Storage and Request Queues to Handle Offline Actions](<https://devfeed.tech/articles/no-cheating-allowed-27397.md>)

Original publisher: [Read original article](<http://engineering.khanacademy.org/posts/no-cheating-allowed.htm>)

Author: Khan Academy

Published: 2015-08-17T22:00:00Z

Content type: article

Language: en

Sources: [Khan Academy](<https://devfeed.tech/sources/khan-academy.md>)

Topics: [LocalStorage](<https://devfeed.tech/topics/localstorage.md>), [client](<https://devfeed.tech/topics/client.md>), [Code](<https://devfeed.tech/topics/code.md>), [Internet](<https://devfeed.tech/topics/internet.md>), [servers](<https://devfeed.tech/topics/servers.md>)

Tags: [architecture](<https://devfeed.tech/tags/architecture.md>), [change](<https://devfeed.tech/tags/change.md>), [code](<https://devfeed.tech/tags/code.md>), [engineering](<https://devfeed.tech/tags/engineering.md>), [function](<https://devfeed.tech/tags/function.md>), [hints](<https://devfeed.tech/tags/hints.md>), [linear](<https://devfeed.tech/tags/linear.md>), [local](<https://devfeed.tech/tags/local.md>), [news](<https://devfeed.tech/tags/news.md>), [offline](<https://devfeed.tech/tags/offline.md>), [queue](<https://devfeed.tech/tags/queue.md>), [request](<https://devfeed.tech/tags/request.md>), [server](<https://devfeed.tech/tags/server.md>), [web-frontend](<https://devfeed.tech/tags/web-frontend.md>)

### AI overview

This article explains how Khan Academy addressed offline hint cheating by changing the client's request architecture. Actions are stored in local storage and placed in a queue for retry when connectivity returns, with linear backoff to avoid repeated requests during outages.

### Source excerpt

By Phillip Lemons The problem Recently, a number of students on Khan Academy found a way to cheat ... Read more

## MCP went stateless: What changed in the 2026-07-28 spec

DevFeed: [MCP went stateless: What changed in the 2026-07-28 spec](<https://devfeed.tech/articles/mcp-went-stateless-what-changed-in-the-2026-07-28-spec-31436.md>)

Original publisher: [Read original article](<https://workos.com/blog/mcp-stateless-spec-2026-07-28>)

Author: WorkOS

Published: 2026-09-16T00:00:00Z

Content type: article

Language: en

Sources: [WorkOS Blog](<https://devfeed.tech/sources/workos-blog.md>)

Topics: [Model Context Protocol](<https://devfeed.tech/topics/model-context-protocol.md>), [migration](<https://devfeed.tech/topics/migration.md>), [HTTP](<https://devfeed.tech/topics/http.md>), [servers](<https://devfeed.tech/topics/servers.md>), [client](<https://devfeed.tech/topics/client.md>)

Tags: [api](<https://devfeed.tech/tags/api.md>), [client](<https://devfeed.tech/tags/client.md>), [http](<https://devfeed.tech/tags/http.md>), [load-balancer](<https://devfeed.tech/tags/load-balancer.md>), [mcp](<https://devfeed.tech/tags/mcp.md>), [replacement](<https://devfeed.tech/tags/replacement.md>), [request](<https://devfeed.tech/tags/request.md>), [routing](<https://devfeed.tech/tags/routing.md>), [server](<https://devfeed.tech/tags/server.md>), [servers](<https://devfeed.tech/tags/servers.md>), [sessions](<https://devfeed.tech/tags/sessions.md>), [stateless](<https://devfeed.tech/tags/stateless.md>), [stream](<https://devfeed.tech/tags/stream.md>)

### AI overview

The 2026-07-28 MCP specification removes protocol-level sessions, the initialize handshake, and stream resumability, making the protocol behave more like an ordinary HTTP API. Most migrations are mechanical, but lost stream requests can cause reliability regressions or duplicated side effects when retried, so side-effecting tools need application-level idempotency keys. The elicitation change also requires architectural rework.

### Source excerpt

Sessions, the initialize handshake, and stream resumability are all gone. Here is what replaced them, and what breaks if you ignore it.

## Linux server performance: Is disk I/O slowing your application?

DevFeed: [Linux server performance: Is disk I/O slowing your application?](<https://devfeed.tech/articles/linux-server-performance-is-disk-i-o-slowing-your-application-20872.md>)

Original publisher: [Read original article](<https://linuxblog.io/linux-server-performance-disk-io-slowing-application/>)

Author: Hayden James

Published: 2026-09-12T16:11:54Z

Content type: tutorial

Language: en

Sources: [Hayden James](<https://devfeed.tech/sources/hayden-james.md>)

Topics: [Linux](<https://devfeed.tech/topics/linux.md>), [IO](<https://devfeed.tech/topics/io.md>), [Server](<https://devfeed.tech/topics/server.md>), [Command-line interface](<https://devfeed.tech/topics/cli.md>), [Processes](<https://devfeed.tech/topics/processes.md>), [NVMe](<https://devfeed.tech/topics/nvme.md>)

Tags: [blog](<https://devfeed.tech/tags/blog.md>), [command-line](<https://devfeed.tech/tags/command-line.md>), [cpu](<https://devfeed.tech/tags/cpu.md>), [linux](<https://devfeed.tech/tags/linux.md>), [load](<https://devfeed.tech/tags/load.md>), [mysql](<https://devfeed.tech/tags/mysql.md>), [nvme](<https://devfeed.tech/tags/nvme.md>), [performance](<https://devfeed.tech/tags/performance.md>), [processes](<https://devfeed.tech/tags/processes.md>), [request](<https://devfeed.tech/tags/request.md>), [server](<https://devfeed.tech/tags/server.md>), [ssd](<https://devfeed.tech/tags/ssd.md>), [storage](<https://devfeed.tech/tags/storage.md>), [sysadmins](<https://devfeed.tech/tags/sysadmins.md>), [terminal](<https://devfeed.tech/tags/terminal.md>)

### AI overview

This tutorial explains how disk I/O bottlenecks can cause high Linux load averages even when CPU usage is low. It shows how to use top, atop, and iotop on a LEMP web server, including per-core I/O wait measurements, to identify storage-related application slowdowns.

### Source excerpt

If your Linux server is bogged down by disk I/O, your first step may often be to use the top command in the terminal to check load averages. Continue reading...

## Introducing IP Allowlisting

DevFeed: [Introducing IP Allowlisting](<https://devfeed.tech/articles/introducing-ip-allowlisting-16082.md>)

Original publisher: [Read original article](<https://postmarkapp.com/blog/restrict-email-sending-api-with-ip-allowlisting>)

Author: Postmark team (fdossetto+postmark@activecampaign.com)

Published: 2026-09-08T17:37:00Z

Content type: release

Language: en

Sources: [Postmark (en-US)](<https://devfeed.tech/sources/postmark-en-us.md>)

Topics: [Security](<https://devfeed.tech/topics/security.md>), [API](<https://devfeed.tech/topics/api.md>), [Network](<https://devfeed.tech/topics/network.md>), [Cloud](<https://devfeed.tech/topics/cloud.md>)

Tags: [api](<https://devfeed.tech/tags/api.md>), [infrastructure](<https://devfeed.tech/tags/infrastructure.md>), [ip](<https://devfeed.tech/tags/ip.md>), [nat](<https://devfeed.tech/tags/nat.md>), [network](<https://devfeed.tech/tags/network.md>), [product-news](<https://devfeed.tech/tags/product-news.md>), [protection](<https://devfeed.tech/tags/protection.md>), [range](<https://devfeed.tech/tags/range.md>), [request](<https://devfeed.tech/tags/request.md>), [security](<https://devfeed.tech/tags/security.md>), [token](<https://devfeed.tech/tags/token.md>)

### AI overview

Postmark introduces IP Allowlisting, a security feature that restricts email sending through the Postmark API to up to 10 configured IP ranges in CIDR format. Requests from outside the allowed ranges are rejected with a 403 response. The ranges can be configured at the Server or account level, with Server settings overriding account settings.

### Source excerpt

Good security is layered and each layer does a job the others can't. Scoping a token to a Server limits what it reaches. Rotating a token limits how long it lasts. Neither can say anything about where a request came from. We've been hard at work to ship a new layer of protection that can. IP Allowlisting is a new Postmark security feature that lets you name the infrastructure your email should come from. It's available now on all Postmark plans at no extra cost. It's off until you turn it on. How IP Allowlisting works You add up to 10 IP ranges, in CIDR format, that are allowed to send email using the Postmark API. Send requests from outside those ranges are rejected with a 403 status code that includes the IP the request came from. You can set your ranges in two places: On a Server. The ranges apply to that Server, covering every Message Stream on it. This is where we'd suggest starting. On your account. The ranges apply to every Server you have. When a Server has ranges of its own they will override account level settings. That's it! A straightforward security control to protect your API sending. Protect individual Servers or across your account. Set your Allowlist ranges on the account or Server. If you don't write CIDR blocks often, it's a quick 30 seconds to get familiar with them and the correct notation. CIDR blocks allow you to enable a grouped collection of IP addresses (aka ranges.) A CIDR block is an IP address followed by a suffix that says how many addresses it covers. The smaller the suffix, the wider the range: 198.51.100.24/32 one address, and only that address 203.0.113.0/24 256 addresses: 203.0.113.0 through 203.0.113.255 203.0.0.0/16 65,536 addresses: 203.0.0.0 through 203.0.255.255 So a /32 pins the allowlist to a single machine, and a /24 covers a subnet. Most teams end up somewhere in that span. Where you find your own ranges depends on how you send. A single VM has a static public IP you can read off your provider's dashboard. Cloud workloads

## The Evolution of HTTP, Clearly Explained

DevFeed: [The Evolution of HTTP, Clearly Explained](<https://devfeed.tech/articles/the-evolution-of-http-clearly-explained-18040.md>)

Original publisher: [Read original article](<https://blog.levelupcoding.com/p/the-evolution-of-http-clearly-explained>)

Author: Nikki Siapno

Published: 2026-09-04T16:39:02Z

Content type: article

Language: en

Sources: [Level Up Coding System Design Newsletter](<https://devfeed.tech/sources/level-up-coding-system-design-newsletter.md>)

Topics: [HTTP](<https://devfeed.tech/topics/http.md>), [client](<https://devfeed.tech/topics/client.md>), [servers](<https://devfeed.tech/topics/servers.md>), [Caching](<https://devfeed.tech/topics/caching.md>), [Web](<https://devfeed.tech/topics/web.md>)

Tags: [browser](<https://devfeed.tech/tags/browser.md>), [caching](<https://devfeed.tech/tags/caching.md>), [encoding](<https://devfeed.tech/tags/encoding.md>), [evolution](<https://devfeed.tech/tags/evolution.md>), [http](<https://devfeed.tech/tags/http.md>), [http-3](<https://devfeed.tech/tags/http-3.md>), [protocol](<https://devfeed.tech/tags/protocol.md>), [request](<https://devfeed.tech/tags/request.md>), [responses](<https://devfeed.tech/tags/responses.md>), [server](<https://devfeed.tech/tags/server.md>), [tcp](<https://devfeed.tech/tags/tcp.md>)

### AI overview

An explanatory article traces HTTP from versions 0.9 through 1.1, describing how headers, status codes, persistent connections, caching, and chunked transfer encoding addressed the web's growing scale and performance needs. It introduces HTTP/3 as part of that broader evolution.

### Source excerpt

From 0.9 to 3.0: What changed and why?

## Track LLM API Costs with genai-prices

DevFeed: [Track LLM API Costs with genai-prices](<https://devfeed.tech/articles/track-llm-api-costs-with-genai-prices-30863.md>)

Original publisher: [Read original article](<https://www.packetcoders.io/track-llm-api-costs-with-genai-prices/>)

Author: Rick Donato

Published: 2026-09-01T11:16:32Z

Content type: tutorial

Language: en

Sources: [Packet Coders - Learn Network Automation](<https://devfeed.tech/sources/packet-coders-learn-network-automation.md>)

Topics: [Large Language Model](<https://devfeed.tech/topics/llm.md>), [API](<https://devfeed.tech/topics/api.md>), [Inference](<https://devfeed.tech/topics/inference.md>), [Library](<https://devfeed.tech/topics/library.md>), [Python](<https://devfeed.tech/topics/python.md>), [Binance](<https://devfeed.tech/topics/binance.md>)

Tags: [api](<https://devfeed.tech/tags/api.md>), [cost](<https://devfeed.tech/tags/cost.md>), [example](<https://devfeed.tech/tags/example.md>), [genai](<https://devfeed.tech/tags/genai.md>), [inference](<https://devfeed.tech/tags/inference.md>), [install](<https://devfeed.tech/tags/install.md>), [library](<https://devfeed.tech/tags/library.md>), [llm](<https://devfeed.tech/tags/llm.md>), [openai](<https://devfeed.tech/tags/openai.md>), [pricing](<https://devfeed.tech/tags/pricing.md>), [python](<https://devfeed.tech/tags/python.md>), [report](<https://devfeed.tech/tags/report.md>), [request](<https://devfeed.tech/tags/request.md>), [tips](<https://devfeed.tech/tags/tips.md>), [token](<https://devfeed.tech/tags/token.md>), [uv](<https://devfeed.tech/tags/uv.md>)

### AI overview

A tutorial introducing the genai-prices Python library for estimating the cost of calling LLM inference APIs. It explains that the library can avoid maintaining a custom pricing table and can report token counts and cost for each request, with an OpenAI installation and usage example.

### Source excerpt

Tip: Use the genai-prices Python library to calculate the estimated cost of calling LLM inference APIs. This avoids maintaining your own pricing table and lets you report token counts and cost for each request. Below is an example: # Install: uv add openai genai-prices from openai import OpenAI from

## How to Confirm Phone Number Ownership with Lookup Identity Match

DevFeed: [How to Confirm Phone Number Ownership with Lookup Identity Match](<https://devfeed.tech/articles/how-to-confirm-phone-number-ownership-with-lookup-identity-match-16088.md>)

Original publisher: [Read original article](<https://www.twilio.com/en-us/blog/confirm-phone-number-ownership-lookup-identity-match>)

Author: Kelley Robinson

Published: 2026-08-31T00:00:00Z

Content type: tutorial

Language: en

Sources: [Twilio Blog](<https://devfeed.tech/sources/twilio-blog.md>)

Topics: [API](<https://devfeed.tech/topics/api.md>), [Code](<https://devfeed.tech/topics/code.md>), [Command-line interface](<https://devfeed.tech/topics/cli.md>), [Serverless](<https://devfeed.tech/topics/serverless.md>), [JavaScript](<https://devfeed.tech/topics/javascript.md>)

Tags: [api](<https://devfeed.tech/tags/api.md>), [cli](<https://devfeed.tech/tags/cli.md>), [code](<https://devfeed.tech/tags/code.md>), [developer-insights](<https://devfeed.tech/tags/developer-insights.md>), [fake-accounts](<https://devfeed.tech/tags/fake-accounts.md>), [fraud](<https://devfeed.tech/tags/fraud.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [javascript](<https://devfeed.tech/tags/javascript.md>), [reduce](<https://devfeed.tech/tags/reduce.md>), [request](<https://devfeed.tech/tags/request.md>), [serverless](<https://devfeed.tech/tags/serverless.md>), [verify](<https://devfeed.tech/tags/verify.md>)

### AI overview

This tutorial explains how to use Twilio Lookup Identity Match to confirm that a person is linked to a phone number. It covers matching submitted identity details against authoritative data, setting up a JavaScript project with the Twilio CLI and Serverless plugin, and using the result to reduce sign-up fraud.

### Source excerpt

Send details like name, address, or date of birth and the Identity Match API will tell you if they match a provided phone number. Reduce fraud and verify identities quickly.

## 【etcd】单 Raft 组与服务器角色：Leader、Follower、Learner 与 request 路由

DevFeed: [【etcd】单 Raft 组与服务器角色：Leader、Follower、Learner 与 request 路由](<https://devfeed.tech/articles/etcd-raft-leader-follower-learner-request-33984.md>)

Original publisher: [Read original article](<https://quant67.com/post/etcd/02-single-raft/02-single-raft.html>)

Author: Liao Tonglang

Published: 2026-08-26T00:00:00Z

Content type: article

Language: zh

Sources: [土法炼钢 - 系统与基础设施](<https://devfeed.tech/sources/source-4.md>)

Topics: [etcd](<https://devfeed.tech/topics/etcd.md>), [Raft](<https://devfeed.tech/topics/raft.md>), [gRPC](<https://devfeed.tech/topics/grpc.md>)

Tags: [apiserver](<https://devfeed.tech/tags/apiserver.md>), [apply](<https://devfeed.tech/tags/apply.md>), [atomic](<https://devfeed.tech/tags/atomic.md>), [commit](<https://devfeed.tech/tags/commit.md>), [compaction](<https://devfeed.tech/tags/compaction.md>), [distributed](<https://devfeed.tech/tags/distributed.md>), [etcd](<https://devfeed.tech/tags/etcd.md>), [etcdserver](<https://devfeed.tech/tags/etcdserver.md>), [follower](<https://devfeed.tech/tags/follower.md>), [kubernetes](<https://devfeed.tech/tags/kubernetes.md>), [leader](<https://devfeed.tech/tags/leader.md>), [learner](<https://devfeed.tech/tags/learner.md>), [linearizable](<https://devfeed.tech/tags/linearizable.md>), [raft](<https://devfeed.tech/tags/raft.md>), [request](<https://devfeed.tech/tags/request.md>), [single-raft-group](<https://devfeed.tech/tags/single-raft-group.md>), [v3](<https://devfeed.tech/tags/v3.md>), [v3-5](<https://devfeed.tech/tags/v3-5.md>), [v3-5-33](<https://devfeed.tech/tags/v3-5-33.md>), [wal](<https://devfeed.tech/tags/wal.md>), [watch](<https://devfeed.tech/tags/watch.md>)

### AI overview

This article explains how etcd v3.5.33 embeds a single Raft group, separates EtcdServer responsibilities from the Raft library, and routes requests across Leader, Follower, and Learner roles. It covers gRPC write forwarding, linearizable and serializable reads, and the handling of watch, lease, and mutating requests.

### Source excerpt

钉清 etcd v3.5.33 单 Raft 组拓扑、EtcdServer 与 go.etcd.io/raft/v3 边界、Leader/Follower/Learner 角色及 gRPC 写读路由；与 distributed/13 分工。

## Why GitHub feels less reliable lately

DevFeed: [Why GitHub feels less reliable lately](<https://devfeed.tech/articles/why-github-feels-less-reliable-lately-34026.md>)

Original publisher: [Read original article](<https://sridharrajarao.com/blog/why-github-feels-less-reliable/>)

Author: Sridhar Rajarao

Published: 2026-08-23T00:00:00Z

Content type: opinion

Language: en

Sources: [Sridhar Rajarao](<https://devfeed.tech/sources/sridhar-rajarao.md>)

Topics: [GitHub](<https://devfeed.tech/topics/github.md>), [incident](<https://devfeed.tech/topics/incident.md>), [migration](<https://devfeed.tech/topics/migration.md>), [systems](<https://devfeed.tech/topics/systems.md>), [Azure](<https://devfeed.tech/topics/azure.md>), [GitHub Actions](<https://devfeed.tech/topics/github-actions.md>), [pull-requests](<https://devfeed.tech/topics/pull-requests.md>)

Tags: [autoscaling](<https://devfeed.tech/tags/autoscaling.md>), [capacity](<https://devfeed.tech/tags/capacity.md>), [concurrency](<https://devfeed.tech/tags/concurrency.md>), [data-centers](<https://devfeed.tech/tags/data-centers.md>), [deployment](<https://devfeed.tech/tags/deployment.md>), [github](<https://devfeed.tech/tags/github.md>), [incident](<https://devfeed.tech/tags/incident.md>), [incident-management](<https://devfeed.tech/tags/incident-management.md>), [istio](<https://devfeed.tech/tags/istio.md>), [reliability](<https://devfeed.tech/tags/reliability.md>), [request](<https://devfeed.tech/tags/request.md>), [resilience](<https://devfeed.tech/tags/resilience.md>), [sre](<https://devfeed.tech/tags/sre.md>), [transformation](<https://devfeed.tech/tags/transformation.md>)

### AI overview

The article argues that GitHub's recent reliability problems reflect the difficult middle of a major infrastructure transformation. It connects incidents to migration complexity, unsafe automation, configuration mistakes, capacity and concurrency weaknesses, database migration errors, and autoscaling problems.

### Source excerpt

GitHub is not having one outage problem. Its recent incident reports show the difficult middle of a platform transformation.

## How ORM N+1 Queries Create Hidden Request Latency

DevFeed: [How ORM N+1 Queries Create Hidden Request Latency](<https://devfeed.tech/articles/your-orm-issued-400-queries-and-the-p99-looked-fine-until-it-didn-t-39588.md>)

Original publisher: [Read original article](<https://ankit-rana.com/logs/36-orm-n-plus-one-queries-hidden-latency/>)

Author: hello@ankit-rana.com

Published: 2026-08-02T00:00:00Z

Content type: tutorial

Language: en

Sources: [Ankit Rana | Mechanical Sympathy](<https://devfeed.tech/sources/ankit-rana-mechanical-sympathy.md>)

Topics: [Object-relational mapping](<https://devfeed.tech/topics/orm.md>), [Latency](<https://devfeed.tech/topics/latency.md>), [Monitoring](<https://devfeed.tech/topics/monitoring.md>), [lazy loading](<https://devfeed.tech/topics/lazy-loading.md>), [Database](<https://devfeed.tech/topics/database.md>), [connection pool](<https://devfeed.tech/topics/connection-pool.md>)

Tags: [connection-pool](<https://devfeed.tech/tags/connection-pool.md>), [database](<https://devfeed.tech/tags/database.md>), [database-performance](<https://devfeed.tech/tags/database-performance.md>), [hibernate](<https://devfeed.tech/tags/hibernate.md>), [latency](<https://devfeed.tech/tags/latency.md>), [lazy-loading](<https://devfeed.tech/tags/lazy-loading.md>), [monitoring](<https://devfeed.tech/tags/monitoring.md>), [n-plus-one](<https://devfeed.tech/tags/n-plus-one.md>), [observability](<https://devfeed.tech/tags/observability.md>), [orm](<https://devfeed.tech/tags/orm.md>), [query](<https://devfeed.tech/tags/query.md>), [request](<https://devfeed.tech/tags/request.md>)

### AI overview

This article explains how ORM lazy loading can turn a loop over orders into an N+1 query pattern. Individual queries may remain fast and avoid slow-query alerts, while the accumulated network round trips increase request latency and hold connection-pool resources. It recommends monitoring queries per request and asserting query counts in tests.

### Source excerpt

N+1 queries hide from monitoring because no individual query is slow. Four hundred queries at 0.4ms each never appear in the slow query log, never move p99 query latency, and still cost the request 300ms because the expense is the round trip rather than the execution. The metric that catches it is queries per request, and the only durable fix is asserting on that count in tests, since the code that causes it looks like a field access rather than I/O.

## Self-service peering with a PeeringDB login

DevFeed: [Self-service peering with a PeeringDB login](<https://devfeed.tech/articles/self-service-peering-with-a-peeringdb-login-36154.md>)

Original publisher: [Read original article](<https://as215248.net/notes/self-service-peering/>)

Author: Bastiaan Brink

Published: 2026-07-27T00:00:00Z

Content type: opinion

Language: en

Sources: [AS215248 - Notes](<https://devfeed.tech/sources/as215248-notes.md>)

Topics: [Networks](<https://devfeed.tech/topics/networks.md>), [OAuth](<https://devfeed.tech/topics/oauth.md>), [Server](<https://devfeed.tech/topics/server.md>)

Tags: [automation](<https://devfeed.tech/tags/automation.md>), [bgp](<https://devfeed.tech/tags/bgp.md>), [dashboard](<https://devfeed.tech/tags/dashboard.md>), [ipv4](<https://devfeed.tech/tags/ipv4.md>), [ipv6](<https://devfeed.tech/tags/ipv6.md>), [ixp](<https://devfeed.tech/tags/ixp.md>), [login](<https://devfeed.tech/tags/login.md>), [mail](<https://devfeed.tech/tags/mail.md>), [networks](<https://devfeed.tech/tags/networks.md>), [oauth](<https://devfeed.tech/tags/oauth.md>), [peering](<https://devfeed.tech/tags/peering.md>), [permission](<https://devfeed.tech/tags/permission.md>), [request](<https://devfeed.tech/tags/request.md>), [self-service](<https://devfeed.tech/tags/self-service.md>)

### AI overview

The article describes a self-service peering portal that uses PeeringDB OAuth to authenticate users, verify ASN update rights, and offer exchanges where both networks are present. Requests create disabled sessions for manual approval, with inherited filtering and validation policies, notifications, and approval-based removal.

### Source excerpt

Peering requests used to be mail ping-pong. Now you log in with PeeringDB on the peering page, pick an exchange, and the session is waiting for my approval.

## Workshop Basel day three

DevFeed: [Workshop Basel day three](<https://devfeed.tech/articles/workshop-basel-day-three-18898.md>)

Original publisher: [Read original article](<https://daniel.haxx.se/blog/2026/07/16/workshop-basel-day-three/>)

Author: Daniel Stenberg

Published: 2026-07-16T20:01:14Z

Content type: article

Language: en

Sources: [Daniel Stenberg](<https://devfeed.tech/sources/daniel-stenberg.md>)

Topics: [HTTP](<https://devfeed.tech/topics/http.md>), [Streaming](<https://devfeed.tech/topics/streaming.md>), [Latency](<https://devfeed.tech/topics/latency.md>), [client](<https://devfeed.tech/topics/client.md>), [servers](<https://devfeed.tech/topics/servers.md>), [browser](<https://devfeed.tech/topics/browser.md>)

Tags: [browser](<https://devfeed.tech/tags/browser.md>), [curl](<https://devfeed.tech/tags/curl.md>), [firefox](<https://devfeed.tech/tags/firefox.md>), [http](<https://devfeed.tech/tags/http.md>), [http-workshop](<https://devfeed.tech/tags/http-workshop.md>), [latency](<https://devfeed.tech/tags/latency.md>), [network](<https://devfeed.tech/tags/network.md>), [proxy](<https://devfeed.tech/tags/proxy.md>), [request](<https://devfeed.tech/tags/request.md>), [series](<https://devfeed.tech/tags/series.md>), [server](<https://devfeed.tech/tags/server.md>), [streaming](<https://devfeed.tech/tags/streaming.md>), [uploads](<https://devfeed.tech/tags/uploads.md>), [web](<https://devfeed.tech/tags/web.md>)

### AI overview

A report from the third day of an HTTP workshop covering Media over QUIC transport, reverse HTTP, and resumable uploads. It discusses MOQ's proposed lower complexity and latency, server-initiated HTTP requests through CDN proxies, and an HTTP upload-resumption draft using Location, HEAD, and PATCH.

### Source excerpt

See also: day one, day two. There is only one thing that is better than two days of HTTP workshop, and that is of course three days of HTTP workshop. The final day of this edition of the series started out with us again shuffling around where we parked ourselves around the big table. Except ... Continue reading Workshop Basel day three ->

## HTTP 206 Partial Content Explained

DevFeed: [HTTP 206 Partial Content Explained](<https://devfeed.tech/articles/http-206-partial-content-explained-40155.md>)

Original publisher: [Read original article](<https://blog.j2sw.com/inetarch/http-206-partial-content-explained/>)

Author: j2sw

Published: 2026-06-26T11:37:15Z

Content type: tutorial

Language: en

Sources: [Justin Wilson (j2sw)](<https://devfeed.tech/sources/justin-wilson-j2sw.md>)

Topics: [HTTP](<https://devfeed.tech/topics/http.md>), [client](<https://devfeed.tech/topics/client.md>), [browser](<https://devfeed.tech/topics/browser.md>), [file](<https://devfeed.tech/topics/file.md>), [servers](<https://devfeed.tech/topics/servers.md>), [Cache](<https://devfeed.tech/topics/cache.md>)

Tags: [browser](<https://devfeed.tech/tags/browser.md>), [cache](<https://devfeed.tech/tags/cache.md>), [cdn](<https://devfeed.tech/tags/cdn.md>), [client](<https://devfeed.tech/tags/client.md>), [file](<https://devfeed.tech/tags/file.md>), [http](<https://devfeed.tech/tags/http.md>), [http-206](<https://devfeed.tech/tags/http-206.md>), [http-codes](<https://devfeed.tech/tags/http-codes.md>), [internet-architecture](<https://devfeed.tech/tags/internet-architecture.md>), [large-files](<https://devfeed.tech/tags/large-files.md>), [range](<https://devfeed.tech/tags/range.md>), [request](<https://devfeed.tech/tags/request.md>), [server](<https://devfeed.tech/tags/server.md>), [video](<https://devfeed.tech/tags/video.md>), [web-servers](<https://devfeed.tech/tags/web-servers.md>), [web-troubleshooting](<https://devfeed.tech/tags/web-troubleshooting.md>)

### AI overview

This tutorial explains HTTP 206 Partial Content, a successful response used when a client requests only part of a file or other resource. It describes byte-range requests, the Range and Content-Range headers, and uses such as video playback, resumable downloads, and cache or CDN handling.

### Source excerpt

A browser does not always need the whole file at once. Sometimes it only needs a slice of the file. That slice might be the next part of a video or a chunk of a large object sitting behind a CDN. When that happens, the client can request a byte range instead of requesting the ... Read more The post HTTP 206 Partial Content Explained appeared first on Justin Wilson (j2sw).

## Nginx TLS tuning for HTTPS performance, TTFB, and latency

DevFeed: [Nginx TLS tuning for HTTPS performance, TTFB, and latency](<https://devfeed.tech/articles/nginx-tuning-tips-https-tls-turbocharge-ttfb-latency-20880.md>)

Original publisher: [Read original article](<https://linuxblog.io/nginx-tuning-tips-tls-ssl-https-ttfb-latency/>)

Author: Hayden James

Published: 2026-06-10T12:06:18Z

Content type: tutorial

Language: en

Sources: [Hayden James](<https://devfeed.tech/sources/hayden-james.md>)

Topics: [nginx](<https://devfeed.tech/topics/nginx.md>), [TLS (Transport Layer Security)](<https://devfeed.tech/topics/tls.md>), [Latency](<https://devfeed.tech/topics/latency.md>), [Handshake](<https://devfeed.tech/topics/handshake.md>), [HTTP](<https://devfeed.tech/topics/http.md>), [Back end](<https://devfeed.tech/topics/backend.md>)

Tags: [blog](<https://devfeed.tech/tags/blog.md>), [encryption](<https://devfeed.tech/tags/encryption.md>), [http](<https://devfeed.tech/tags/http.md>), [http-3](<https://devfeed.tech/tags/http-3.md>), [latency](<https://devfeed.tech/tags/latency.md>), [linux](<https://devfeed.tech/tags/linux.md>), [nginx](<https://devfeed.tech/tags/nginx.md>), [performance](<https://devfeed.tech/tags/performance.md>), [request](<https://devfeed.tech/tags/request.md>), [reuse](<https://devfeed.tech/tags/reuse.md>), [security](<https://devfeed.tech/tags/security.md>), [server](<https://devfeed.tech/tags/server.md>), [sysadmins](<https://devfeed.tech/tags/sysadmins.md>), [tls](<https://devfeed.tech/tags/tls.md>)

### AI overview

A practical guide to tuning Nginx TLS, HTTP/2, and HTTP/3 settings for HTTPS performance. It explains that tuning can reduce handshake overhead and improve connection reuse, while application execution often remains the main contributor to TTFB and latency.

### Source excerpt

Nginx TLS tuning won't fix a slow application, but it does cut handshake overhead and improve connection reuse, which shaves milliseconds off every HTTPS request. Continue reading...

## 7 tips for using Figma Make credits more efficiently

DevFeed: [7 tips for using Figma Make credits more efficiently](<https://devfeed.tech/articles/7-tips-for-using-figma-make-credits-more-efficiently-9475.md>)

Original publisher: [Read original article](<https://www.figma.com/blog/7-tips-for-using-figma-make-credits-more-efficiently/>)

Author: Alexia Danton

Published: 2026-05-22T12:00:00Z

Content type: tutorial

Language: en

Sources: [Figma Blog](<https://devfeed.tech/sources/figma-blog.md>)

Topics: [Figma](<https://devfeed.tech/topics/figma.md>), [Code](<https://devfeed.tech/topics/code.md>), [ui](<https://devfeed.tech/topics/ui.md>)

Tags: [best-practices](<https://devfeed.tech/tags/best-practices.md>), [code](<https://devfeed.tech/tags/code.md>), [component](<https://devfeed.tech/tags/component.md>), [context](<https://devfeed.tech/tags/context.md>), [cost](<https://devfeed.tech/tags/cost.md>), [figma](<https://devfeed.tech/tags/figma.md>), [prompting](<https://devfeed.tech/tags/prompting.md>), [request](<https://devfeed.tech/tags/request.md>), [screen](<https://devfeed.tech/tags/screen.md>), [state](<https://devfeed.tech/tags/state.md>), [structure](<https://devfeed.tech/tags/structure.md>), [tips](<https://devfeed.tech/tags/tips.md>), [ui](<https://devfeed.tech/tags/ui.md>)

### AI overview

This tutorial presents seven practices for using Figma Make credits more efficiently. It recommends writing a complete initial prompt, keeping follow-up prompts focused and specific, building in stages, grouping related changes, and switching to direct editing for small visual adjustments.

### Source excerpt

While everyone's talking about "tokenmaxxing," we've compiled seven best practices to help you build smarter--without prompting more--in Figma Make.

## How Spring Security Processes and Authorizes HTTP Requests

DevFeed: [How Spring Security Processes and Authorizes HTTP Requests](<https://devfeed.tech/articles/stop-fighting-spring-security-17749.md>)

Original publisher: [Read original article](<https://blog.amigoscode.com/p/stop-fighting-spring-security>)

Author: Nelson Djalo

Published: 2026-04-30T15:54:51Z

Content type: tutorial

Language: en

Sources: [Amigoscode Newsletter](<https://devfeed.tech/sources/amigoscode-newsletter.md>)

Topics: [Framework](<https://devfeed.tech/topics/framework.md>), [Security](<https://devfeed.tech/topics/security.md>), [Authentication](<https://devfeed.tech/topics/authentication.md>), [HTTP](<https://devfeed.tech/topics/http.md>)

Tags: [authentication](<https://devfeed.tech/tags/authentication.md>), [framework](<https://devfeed.tech/tags/framework.md>), [http](<https://devfeed.tech/tags/http.md>), [request](<https://devfeed.tech/tags/request.md>), [security](<https://devfeed.tech/tags/security.md>), [spring](<https://devfeed.tech/tags/spring.md>)

### AI overview

This tutorial explains Spring Security as an ordered chain of servlet filters that processes each HTTP request before it reaches a controller. It covers the SecurityFilterChain, SecurityContextHolder, authentication filters, credential verification, and authorization checks.

### Source excerpt

Walk a request through the chain end to end and the framework stops being magic.

## Anatomy of a trace

DevFeed: [Anatomy of a trace](<https://devfeed.tech/articles/anatomy-of-a-trace-17774.md>)

Original publisher: [Read original article](<https://encore.dev/blog/anatomy-of-a-trace>)

Author: Ivan Cernja

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

Content type: article

Language: en

Sources: [Encore Updates](<https://devfeed.tech/sources/encore-updates.md>)

Topics: [tracing](<https://devfeed.tech/topics/tracing.md>), [Traces](<https://devfeed.tech/topics/traces.md>), [telemetry](<https://devfeed.tech/topics/telemetry.md>), [API](<https://devfeed.tech/topics/api.md>), [Databases](<https://devfeed.tech/topics/databases.md>), [Cache](<https://devfeed.tech/topics/cache.md>), [Remote Procedure Call (RPC)](<https://devfeed.tech/topics/rpc.md>), [HTTP](<https://devfeed.tech/topics/http.md>), [SQL](<https://devfeed.tech/topics/sql.md>), [Authentication](<https://devfeed.tech/topics/authentication.md>)

Tags: [api](<https://devfeed.tech/tags/api.md>), [authentication](<https://devfeed.tech/tags/authentication.md>), [cache](<https://devfeed.tech/tags/cache.md>), [database](<https://devfeed.tech/tags/database.md>), [distributed](<https://devfeed.tech/tags/distributed.md>), [http](<https://devfeed.tech/tags/http.md>), [request](<https://devfeed.tech/tags/request.md>), [rpc](<https://devfeed.tech/tags/rpc.md>), [sql](<https://devfeed.tech/tags/sql.md>), [trace](<https://devfeed.tech/tags/trace.md>), [tracing](<https://devfeed.tech/tags/tracing.md>)

### AI overview

This article explains how distributed traces are built as requests move through services and operations. It describes root and child spans, trace IDs, automatic context propagation, and the operation-specific data captured by Encore's runtime, including API calls, RPCs, database queries, cache writes, and outbound HTTP calls.

### Source excerpt

What actually happens when a request hits your application, and what a distributed trace captures at every step.

## Happy Teams Build Better Products

DevFeed: [Happy Teams Build Better Products](<https://devfeed.tech/articles/happy-teams-build-better-products-17954.md>)

Original publisher: [Read original article](<https://newsletter.systemdesignclassroom.com/p/happy-teams-build-better-products>)

Author: Raul Junco

Published: 2025-12-12T12:38:14Z

Content type: opinion

Language: en

Sources: [System Design Classroom](<https://devfeed.tech/sources/system-design-classroom.md>)

Topics: [incident](<https://devfeed.tech/topics/incident.md>), [debugging](<https://devfeed.tech/topics/debugging.md>), [Traces](<https://devfeed.tech/topics/traces.md>), [telemetry](<https://devfeed.tech/topics/telemetry.md>), [Tooling](<https://devfeed.tech/topics/tooling.md>)

Tags: [context](<https://devfeed.tech/tags/context.md>), [debugging](<https://devfeed.tech/tags/debugging.md>), [incident](<https://devfeed.tech/tags/incident.md>), [metrics](<https://devfeed.tech/tags/metrics.md>), [request](<https://devfeed.tech/tags/request.md>), [screenshots](<https://devfeed.tech/tags/screenshots.md>), [teams](<https://devfeed.tech/tags/teams.md>), [tools](<https://devfeed.tech/tags/tools.md>), [traces](<https://devfeed.tech/tags/traces.md>)

### AI overview

An opinion article argues that engineering teams work better when they preserve incident context, use replays to reduce meetings, and consolidate debugging signals such as logs, traces, and metrics.

### Source excerpt

6 lessons every engineer eventually learns the hard way.

## Partial Function Application is coming in PHP 8.6

DevFeed: [Partial Function Application is coming in PHP 8.6](<https://devfeed.tech/articles/partial-function-application-is-coming-in-php-8-6-20473.md>)

Original publisher: [Read original article](<https://www.amitmerchant.com/partial-function-application-php-86/>)

Author: Amit Merchant

Published: 2025-12-05T00:00:00Z

Content type: tutorial

Language: en

Sources: [Amit Merchant](<https://devfeed.tech/sources/amit-merchant.md>)

Topics: [PHP](<https://devfeed.tech/topics/php.md>), [PHP 8.6](<https://devfeed.tech/topics/php-8-6.md>), [Code](<https://devfeed.tech/topics/code.md>), [servers](<https://devfeed.tech/topics/servers.md>)

Tags: [argument](<https://devfeed.tech/tags/argument.md>), [authorization](<https://devfeed.tech/tags/authorization.md>), [callback](<https://devfeed.tech/tags/callback.md>), [closure](<https://devfeed.tech/tags/closure.md>), [function](<https://devfeed.tech/tags/function.md>), [http](<https://devfeed.tech/tags/http.md>), [parameter](<https://devfeed.tech/tags/parameter.md>), [php](<https://devfeed.tech/tags/php.md>), [php-8-6](<https://devfeed.tech/tags/php-8-6.md>), [request](<https://devfeed.tech/tags/request.md>), [types](<https://devfeed.tech/tags/types.md>)

### AI overview

This tutorial introduces Partial Function Application in PHP 8.6. It explains how placeholders create pre-configured Closures, covers multiple holes, named and variadic arguments, and shows a practical example for adding an Authorization header to HTTP requests.

### Source excerpt

Ever reach for a simple callback and end up writing a tiny novella--an arrow function stuffed with types, reordered parameters, and boilerplate just to pass one value through?

## Трейсинг в hh.ru: как мы выросли от 1 тысячи до 1 миллиона событий в секунду без семплирования

DevFeed: [Трейсинг в hh.ru: как мы выросли от 1 тысячи до 1 миллиона событий в секунду без семплирования](<https://devfeed.tech/articles/hh-ru-1-1-30690.md>)

Original publisher: [Read original article](<https://habr.com/ru/companies/hh/articles/939754/>)

Author: Heruvimka (hh.ru, Конференции Олега Бунина (Онтико))

Published: 2025-09-16T09:00:45Z

Content type: article

Language: ru

Sources: [HeadHunter RU](<https://devfeed.tech/sources/headhunter-ru.md>)

Topics: [observability](<https://devfeed.tech/topics/observability.md>), [telemetry](<https://devfeed.tech/topics/telemetry.md>), [SRE](<https://devfeed.tech/topics/sre.md>), [Kafka](<https://devfeed.tech/topics/kafka.md>), [nginx](<https://devfeed.tech/topics/nginx.md>), [Apache Cassandra](<https://devfeed.tech/topics/cassandra.md>), [OpenTelemetry](<https://devfeed.tech/topics/opentelemetry.md>), [RabbitMQ](<https://devfeed.tech/topics/rabbitmq.md>)

Tags: [cassandra](<https://devfeed.tech/tags/cassandra.md>), [devops](<https://devfeed.tech/tags/devops.md>), [jaeger](<https://devfeed.tech/tags/jaeger.md>), [kafka](<https://devfeed.tech/tags/kafka.md>), [nginx](<https://devfeed.tech/tags/nginx.md>), [observability](<https://devfeed.tech/tags/observability.md>), [opentelemetry](<https://devfeed.tech/tags/opentelemetry.md>), [operational-intelligence](<https://devfeed.tech/tags/operational-intelligence.md>), [rabbitmq](<https://devfeed.tech/tags/rabbitmq.md>), [request](<https://devfeed.tech/tags/request.md>), [sre](<https://devfeed.tech/tags/sre.md>), [tag-1e4ee1f65f5a](<https://devfeed.tech/tags/tag-1e4ee1f65f5a.md>), [tag-68e701e78517](<https://devfeed.tech/tags/tag-68e701e78517.md>), [tag-73eb9b712998](<https://devfeed.tech/tags/tag-73eb9b712998.md>), [tag-75f84211cab4](<https://devfeed.tech/tags/tag-75f84211cab4.md>), [tag-8f8626975338](<https://devfeed.tech/tags/tag-8f8626975338.md>), [tag-9abb13e52060](<https://devfeed.tech/tags/tag-9abb13e52060.md>), [tag-b92bf5906bbd](<https://devfeed.tech/tags/tag-b92bf5906bbd.md>), [tag-d9df843a1803](<https://devfeed.tech/tags/tag-d9df843a1803.md>), [tag-dfac9042ce7b](<https://devfeed.tech/tags/tag-dfac9042ce7b.md>), [tracing](<https://devfeed.tech/tags/tracing.md>)

### AI overview

This Russian developer article describes how hh.ru built and rebuilt its tracing and observability architecture as its data volume increased. The supplied text states that the system handles 24,000 RPS, one million spans per second, and 5,000 service instances, and introduces a log-based tracing design using Request-Id propagation.

### Source excerpt

В каждой компании есть необходимость выстроить систему observability. В hh.ru мы перестраивали архитектуру под большее количество данных несколько раз -- сейчас имеем на входе 24к RPS, 1 миллион спанов в секунду, 5к инстансов сервисов. Если вы -- инженер, который находится в процессе построения или перестройки собственной системы трейсинга, этот доклад -- для вас. Привет, Хабр! Я -- Александр Казанцев, уже более десяти лет в разработке. Когда-то был инженером на пивзаводе и могу рассказать, из чего делают пенное; но сегодня -- о другом. Читать далее

## Implementing Model Monitoring on Databricks

DevFeed: [Implementing Model Monitoring on Databricks](<https://devfeed.tech/articles/implementing-model-monitoring-on-databricks-28604.md>)

Original publisher: [Read original article](<https://www.marvelousmlops.io/p/lecture-10-implementing-model-monitoring>)

Author: Başak Tuğçe Eskili

Published: 2025-08-06T16:55:23Z

Content type: tutorial

Language: en

Sources: [MarvelousMLOps](<https://devfeed.tech/sources/marvelousmlops.md>)

Topics: [databricks](<https://devfeed.tech/topics/databricks.md>), [MLOps](<https://devfeed.tech/topics/mlops.md>), [Monitoring](<https://devfeed.tech/topics/monitoring.md>), [model-serving](<https://devfeed.tech/topics/model-serving.md>), [dashboards](<https://devfeed.tech/topics/dashboards.md>), [Inference](<https://devfeed.tech/topics/inference.md>), [Logging](<https://devfeed.tech/topics/logging.md>), [Data Quality](<https://devfeed.tech/topics/data-quality.md>)

Tags: [databricks](<https://devfeed.tech/tags/databricks.md>), [metrics](<https://devfeed.tech/tags/metrics.md>), [mlops](<https://devfeed.tech/tags/mlops.md>), [model-monitoring](<https://devfeed.tech/tags/model-monitoring.md>), [model-serving](<https://devfeed.tech/tags/model-serving.md>), [monitoring](<https://devfeed.tech/tags/monitoring.md>), [request](<https://devfeed.tech/tags/request.md>), [table](<https://devfeed.tech/tags/table.md>)

### AI overview

Lecture 10 in an MLOps with Databricks course demonstrates model monitoring using inference tables and Lakehouse Monitoring. It covers collecting inference logs, creating a structured monitoring table, scheduling refreshes, and building a dashboard to visualize metrics and detect drift.

### Source excerpt

Lecture 10 of MLOps with Databricks course

## Shadow Repeater:AI-enhanced manual testing

DevFeed: [Shadow Repeater:AI-enhanced manual testing](<https://devfeed.tech/articles/shadow-repeater-ai-enhanced-manual-testing-7697.md>)

Original publisher: [Read original article](<https://portswigger.net/research/shadow-repeater-ai-enhanced-manual-testing>)

Author: Gareth Heyes

Published: 2025-02-20T13:20:19Z

Content type: article

Language: en

Sources: [PortSwigger Research](<https://devfeed.tech/sources/portswigger-research.md>)

Topics: [Artificial Intelligence](<https://devfeed.tech/topics/ai.md>), [Testing](<https://devfeed.tech/topics/testing.md>), [Vulnerabilities](<https://devfeed.tech/topics/vulnerabilities.md>), [Extension](<https://devfeed.tech/topics/extension.md>), [Code](<https://devfeed.tech/topics/code.md>)

Tags: [ai](<https://devfeed.tech/tags/ai.md>), [attacks](<https://devfeed.tech/tags/attacks.md>), [automatic](<https://devfeed.tech/tags/automatic.md>), [code](<https://devfeed.tech/tags/code.md>), [extension](<https://devfeed.tech/tags/extension.md>), [github](<https://devfeed.tech/tags/github.md>), [request](<https://devfeed.tech/tags/request.md>), [testing](<https://devfeed.tech/tags/testing.md>), [vulnerabilities](<https://devfeed.tech/tags/vulnerabilities.md>), [xss](<https://devfeed.tech/tags/xss.md>)

### AI overview

Shadow Repeater is a Burp Repeater extension that enhances manual security testing with AI-powered automatic variation testing. It analyzes changed parameters and payloads, generates variants through an AI model, tests them against the target, and uses response diffing to identify potentially interesting behavior and vulnerabilities.

### Source excerpt

Have you ever wondered how many vulnerabilities you've missed by a hair's breadth, due to a single flawed choice? We've just released Shadow Repeater, which enhances your manual testing with AI-powere

## 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...

## Heroku Investigates Puma Bug Causing High Response Times with Router 2.0

DevFeed: [Heroku Investigates Puma Bug Causing High Response Times with Router 2.0](<https://devfeed.tech/articles/pumas-routers-keepalives-oh-my-26489.md>)

Original publisher: [Read original article](<https://www.heroku.com/blog/pumas-routers-keepalives-ohmy/>)

Author: Elizabeth Cox

Published: 2024-11-21T18:13:05Z

Content type: article

Language: en

Sources: [Heroku](<https://devfeed.tech/sources/heroku.md>)

Topics: [Heroku](<https://devfeed.tech/topics/heroku.md>), [Ruby](<https://devfeed.tech/topics/ruby.md>), [Rails](<https://devfeed.tech/topics/rails.md>), [HTTP](<https://devfeed.tech/topics/http.md>), [servers](<https://devfeed.tech/topics/servers.md>)

Tags: [applications](<https://devfeed.tech/tags/applications.md>), [article](<https://devfeed.tech/tags/article.md>), [bug](<https://devfeed.tech/tags/bug.md>), [cloud-infrastructure](<https://devfeed.tech/tags/cloud-infrastructure.md>), [dashboards](<https://devfeed.tech/tags/dashboards.md>), [dynos](<https://devfeed.tech/tags/dynos.md>), [engineering](<https://devfeed.tech/tags/engineering.md>), [heroku](<https://devfeed.tech/tags/heroku.md>), [http](<https://devfeed.tech/tags/http.md>), [improvements](<https://devfeed.tech/tags/improvements.md>), [legacy](<https://devfeed.tech/tags/legacy.md>), [load](<https://devfeed.tech/tags/load.md>), [performance](<https://devfeed.tech/tags/performance.md>), [request](<https://devfeed.tech/tags/request.md>), [router](<https://devfeed.tech/tags/router.md>), [router-2-0](<https://devfeed.tech/tags/router-2-0.md>), [ruby](<https://devfeed.tech/tags/ruby.md>), [server](<https://devfeed.tech/tags/server.md>), [technical](<https://devfeed.tech/tags/technical.md>), [update](<https://devfeed.tech/tags/update.md>), [upgrade](<https://devfeed.tech/tags/upgrade.md>)

### AI overview

Heroku investigates a Puma bug that caused elevated response times for a small subset of applications after enabling Router 2.0. The article explains the investigation, reproduction conditions, mitigation guidance, and the subsequent Puma 7.0 fix.

### Source excerpt

Update: Puma 7.0 was released with a fix for the bug described in this article. We recommend Ruby applications upgrade to Puma 7.0.4 or higher. This week, Heroku made Router 2.0 generally available, bringing features like HTTP/2, performance improvements and reliability enhancements out of the beta program! Throughout the Router 2.0 beta, our engineering team [...] The post Pumas, Routers & Keepalives--Oh my! appeared first on Heroku.

[Next page](<https://devfeed.tech/tags/request.md?cursor=WyIyMDI0LTExLTIxVDE4OjEzOjA1KzAwOjAwIiwgIjk1YmJkMGFhLTE2ZDYtNDViOS1hZGRmLWZmNmUyNjBiNmI1ZSJd>)