# load-testing

Published articles for load-testing.

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

## The Thundering Herd Problem in Agentic AI: Why Traditional Fixes Fall Short

DevFeed: [The Thundering Herd Problem in Agentic AI: Why Traditional Fixes Fall Short](<https://devfeed.tech/articles/the-thundering-herd-problem-in-agentic-ai-why-traditional-fixes-fall-short-23739.md>)

Original publisher: [Read original article](<https://cockroachlabs.com/blog/agentic-ai-thundering-herd-problem>)

Author: Quentin Packard

Published: 2026-06-19T00:00:00Z

Content type: article

Language: en

Sources: [Cockroach Labs](<https://devfeed.tech/sources/cockroach-labs.md>)

Topics: [Agentic AI Architecture](<https://devfeed.tech/topics/agentic-ai-architecture.md>), [agent orchestration](<https://devfeed.tech/topics/agent-orchestration.md>), [AI Agent](<https://devfeed.tech/topics/ai-agent.md>), [Artificial Intelligence](<https://devfeed.tech/topics/ai.md>), [Concurrency](<https://devfeed.tech/topics/concurrency.md>)

Tags: [agent-orchestration](<https://devfeed.tech/tags/agent-orchestration.md>), [agentic-ai](<https://devfeed.tech/tags/agentic-ai.md>), [ai-architecture](<https://devfeed.tech/tags/ai-architecture.md>), [load-testing](<https://devfeed.tech/tags/load-testing.md>), [parallel](<https://devfeed.tech/tags/parallel.md>), [thundering-herd](<https://devfeed.tech/tags/thundering-herd.md>)

### AI overview

This article examines how agentic AI can create a thundering herd through intentional fan-out and parallel execution. It argues that traditional mitigations only partly transfer because agent-generated synchronization can produce a sharp saturation point that staging load tests may not reveal.

### Source excerpt

The thundering herd of the past was externally triggered.

## Scaling Whatnot: Behind the Largest Live Shopping Stream in US History

DevFeed: [Scaling Whatnot: Behind the Largest Live Shopping Stream in US History](<https://devfeed.tech/articles/scaling-whatnot-behind-the-largest-live-shopping-stream-in-us-history-23712.md>)

Original publisher: [Read original article](<https://medium.com/whatnot-engineering/scaling-whatnot-behind-the-largest-live-shopping-stream-in-us-history-040a458f538c?source=rss----162aeca881b0---4>)

Author: Whatnot Engineering

Published: 2026-02-24T14:33:16Z

Content type: article

Language: en

Sources: [Whatnot Engineering](<https://devfeed.tech/sources/whatnot-engineering.md>)

Topics: [Scalability](<https://devfeed.tech/topics/scalability.md>), [Architecture & Design](<https://devfeed.tech/topics/architecture-design.md>), [Platform Engineering](<https://devfeed.tech/topics/platform-engineering.md>), [SRE](<https://devfeed.tech/topics/sre.md>), [Elixir](<https://devfeed.tech/topics/elixir.md>), [Python](<https://devfeed.tech/topics/python.md>)

Tags: [cloud-computing](<https://devfeed.tech/tags/cloud-computing.md>), [devops](<https://devfeed.tech/tags/devops.md>), [elixir](<https://devfeed.tech/tags/elixir.md>), [infrastructure](<https://devfeed.tech/tags/infrastructure.md>), [load-testing](<https://devfeed.tech/tags/load-testing.md>), [python](<https://devfeed.tech/tags/python.md>), [resilience](<https://devfeed.tech/tags/resilience.md>), [scalability](<https://devfeed.tech/tags/scalability.md>), [scale](<https://devfeed.tech/tags/scale.md>), [site-reliability-engineer](<https://devfeed.tech/tags/site-reliability-engineer.md>), [software-engineering](<https://devfeed.tech/tags/software-engineering.md>), [sre](<https://devfeed.tech/tags/sre.md>), [technology](<https://devfeed.tech/tags/technology.md>)

### AI overview

Whatnot describes how it prepared its platform for a MrBeast giveaway stream that reached 583,000 concurrent viewers and became the largest live shopping event in US history. The article covers architectural investments, progressive production load testing, event-day results, and lessons for future scalability.

### Source excerpt

On February 8, 2026, over a half million viewers tuned in to watch MrBeast give away 1 million dollars in prizes on Whatnot. On Big Game Sunday 2026, MrBeast went live on Whatnot for a giveaway show that would become the largest live shopping event in US history. At peak, 583,000 concurrent viewers were watching a single show on our platform. Over 555k people entered a single giveaway. We drove hundreds of thousands of new signups in 24 hours. If any one of a dozen systems buckled, it would have happened live on camera. We pulled it off with zero major incidents. But that outcome was never guaranteed. It took months of preparation, 60+ engineers across every major engineering org, and some of the most significant infrastructure investments we've ever made. In this post, we'll walk through the biggest technical challenges we faced and how we solved them, not with throwaway scaffolding, but with durable platform improvements that raise our scalability ceiling for every seller and buyer on the platform. We'll cover the work in three parts. First, the key architectural investments we made to handle this scale: admission control, connection pooling, feed resilience, and video infrastructure. Then, how we validated it all through progressive production load testing. Finally, what happened on event day, what we learned, and what we're carrying forward. Setting the Stage If you've followed our blog, you might remember our Post Malone "Post-Poned" post from 2022 or our three-part series on preparing for the 2024 Big Game. Each of those events pushed us to improve, and each one revealed new limits. As our community has grown, scaling our infrastructure to match has been a consistent priority. The MrBeast event was on a different order of magnitude entirely, but it accelerated work that was already underway. Our target was to support 1 million concurrent viewers on a single stream and 1.35 million across the platform. To put that in perspective, our previous largest event had

## Kubernetes Memory Limits and Go

DevFeed: [Kubernetes Memory Limits and Go](<https://devfeed.tech/articles/kubernetes-memory-limits-and-go-22232.md>)

Original publisher: [Read original article](<https://www.ardanlabs.com/blog/2024/02/kubernetes-memory-limits-go.html>)

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

Content type: article

Language: en

Sources: [William Kennedy](<https://devfeed.tech/sources/william-kennedy.md>)

Topics: [Go Language](<https://devfeed.tech/topics/go-language.md>), [Kubernetes](<https://devfeed.tech/topics/kubernetes.md>), [configuration](<https://devfeed.tech/topics/configuration.md>), [container](<https://devfeed.tech/topics/container.md>), [Testing](<https://devfeed.tech/topics/testing.md>)

Tags: [configuration](<https://devfeed.tech/tags/configuration.md>), [container](<https://devfeed.tech/tags/container.md>), [experiment](<https://devfeed.tech/tags/experiment.md>), [go](<https://devfeed.tech/tags/go.md>), [golang](<https://devfeed.tech/tags/golang.md>), [kubernetes](<https://devfeed.tech/tags/kubernetes.md>), [load-testing](<https://devfeed.tech/tags/load-testing.md>), [memory](<https://devfeed.tech/tags/memory.md>), [performance](<https://devfeed.tech/tags/performance.md>)

### AI overview

This article examines how Kubernetes memory limits interact with the Go runtime. Through controlled load testing, it investigates how out-of-memory events arise under hard limits and how GOMEMLIMIT, Kubernetes requests, and limits may help align Go services with container memory boundaries. The author notes that the results are experimental and may not apply directly to every service.

### Source excerpt

Kubernetes memory limits introduce a subtle but critical interaction with the Go runtime that can determine whether a service runs efficiently or fails under load. This article explores how Go manages memory under normal conditions and what changes when Kubernetes enforces hard memory constraints. Using controlled load testing, it shows why Go is generally excellent at self regulating memory, how OOM events emerge once limits are imposed, and how tools like GOMEMLIMIT can be used to align the runtime with container boundaries. Originally published in July 2024, the guidance remains highly relevant for teams running Go services in containerized environments where stability and throughput are tightly coupled to memory configuration.

## Election 2029: Load Testing

DevFeed: [Election 2029: Load Testing](<https://devfeed.tech/articles/election-2029-load-testing-30706.md>)

Original publisher: [Read original article](<https://codeblog.jonskeet.uk/2026/01/18/election-2029-load-testing/>)

Author: jonskeet

Published: 2026-01-18T18:11:55Z

Content type: article

Language: en

Sources: [Jon Skeet](<https://devfeed.tech/sources/jon-skeet.md>)

Topics: [Testing](<https://devfeed.tech/topics/testing.md>), [Tooling](<https://devfeed.tech/topics/tooling.md>), [HTTP](<https://devfeed.tech/topics/http.md>), [Code](<https://devfeed.tech/topics/code.md>)

Tags: [election-2029](<https://devfeed.tech/tags/election-2029.md>), [http](<https://devfeed.tech/tags/http.md>), [load-testing](<https://devfeed.tech/tags/load-testing.md>), [performance](<https://devfeed.tech/tags/performance.md>), [testing](<https://devfeed.tech/tags/testing.md>), [time](<https://devfeed.tech/tags/time.md>), [tooling](<https://devfeed.tech/tags/tooling.md>)

### AI overview

This article examines three approaches to load testing an election website, describing its traffic and cost requirements, the trade-offs of the approaches tried, and the author's medium-term solution.

### Source excerpt

I've now been through three approaches to load testing for the site, and I think I've settled on a solution for the medium term at least. This post explains what I'm trying to achieve, along with the pros and cons of what I've tried. Requirements For this particular site, I have four requirements: If the ... Continue reading Election 2029: Load Testing ->

## How Encore.ts combines Node.js with an asynchronous Rust runtime

DevFeed: [How Encore.ts combines Node.js with an asynchronous Rust runtime](<https://devfeed.tech/articles/encore-ts-9x-faster-than-express-js-3x-faster-than-elysiajs-hono-17797.md>)

Original publisher: [Read original article](<https://encore.dev/blog/event-loops>)

Author: André Eriksson

Published: 2024-06-17T00:00:00Z

Content type: article

Language: en

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

Topics: [Node.js](<https://devfeed.tech/topics/node-js.md>), [Rust](<https://devfeed.tech/topics/rust.md>), [Tokio](<https://devfeed.tech/topics/tokio.md>), [Framework](<https://devfeed.tech/topics/framework.md>), [API](<https://devfeed.tech/topics/api.md>)

Tags: [benchmark](<https://devfeed.tech/tags/benchmark.md>), [load-testing](<https://devfeed.tech/tags/load-testing.md>), [node-js](<https://devfeed.tech/tags/node-js.md>), [rust](<https://devfeed.tech/tags/rust.md>), [testing](<https://devfeed.tech/tags/testing.md>), [tokio](<https://devfeed.tech/tags/tokio.md>), [typescript](<https://devfeed.tech/tags/typescript.md>)

### AI overview

The article explains how Encore.ts combines a TypeScript backend framework with a high-performance Rust runtime. The runtime handles HTTP I/O on a multithreaded asynchronous event loop using Tokio and Hyper, then passes processed requests to Node.js handlers while maintaining Node.js compatibility.

### Source excerpt

Combining Node.js with Async Rust for remarkable performance

## Cloud benchmark latency: Temporal Cloud vs. self-hosted

DevFeed: [Cloud benchmark latency: Temporal Cloud vs. self-hosted](<https://devfeed.tech/articles/cloud-benchmark-latency-temporal-cloud-vs-self-hosted-35732.md>)

Original publisher: [Read original article](<https://temporal.io/blog/benchmarking-latency-temporal-cloud-vs-self-hosted-temporal>)

Author: Meagan Speare

Published: 2024-05-22T06:00:00Z

Content type: comparison

Language: en

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

Topics: [Benchmark](<https://devfeed.tech/topics/benchmark.md>), [Latency](<https://devfeed.tech/topics/latency.md>), [Cloud](<https://devfeed.tech/topics/cloud.md>), [Self-hosted](<https://devfeed.tech/topics/self-hosted.md>), [benchmarking](<https://devfeed.tech/topics/benchmarking.md>), [SDKs](<https://devfeed.tech/topics/sdks.md>), [Kubernetes](<https://devfeed.tech/topics/kubernetes.md>)

Tags: [benchmark](<https://devfeed.tech/tags/benchmark.md>), [benchmarking](<https://devfeed.tech/tags/benchmarking.md>), [cloud](<https://devfeed.tech/tags/cloud.md>), [kubernetes](<https://devfeed.tech/tags/kubernetes.md>), [latency](<https://devfeed.tech/tags/latency.md>), [load-testing](<https://devfeed.tech/tags/load-testing.md>), [performance](<https://devfeed.tech/tags/performance.md>), [sdk](<https://devfeed.tech/tags/sdk.md>), [self-hosted](<https://devfeed.tech/tags/self-hosted.md>), [temporal-concepts](<https://devfeed.tech/tags/temporal-concepts.md>)

### AI overview

This article compares application-side latency for Temporal Cloud and self-hosted Temporal with Workers hosted in the same region. Its benchmark reports lower latency for Temporal Cloud, attributing the result to architectural improvements such as a custom persistence layer that outweigh the added network latency.

### Source excerpt

Compare cloud benchmark results for Temporal Cloud and self-hosted setups. See how latency and performance stack up.

## Scaling Temporal: The basics

DevFeed: [Scaling Temporal: The basics](<https://devfeed.tech/articles/scaling-temporal-the-basics-35972.md>)

Original publisher: [Read original article](<https://temporal.io/blog/scaling-temporal-the-basics>)

Author: Rob Holland

Published: 2023-05-23T08:00:00Z

Content type: tutorial

Language: en

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

Topics: [scaling](<https://devfeed.tech/topics/scaling.md>), [Kubernetes](<https://devfeed.tech/topics/kubernetes.md>), [Monitoring](<https://devfeed.tech/topics/monitoring.md>), [MySQL](<https://devfeed.tech/topics/mysql.md>), [Grafana](<https://devfeed.tech/topics/grafana.md>), [Prometheus](<https://devfeed.tech/topics/prometheus.md>)

Tags: [clusters](<https://devfeed.tech/tags/clusters.md>), [configuration](<https://devfeed.tech/tags/configuration.md>), [cpu](<https://devfeed.tech/tags/cpu.md>), [grafana](<https://devfeed.tech/tags/grafana.md>), [kubernetes](<https://devfeed.tech/tags/kubernetes.md>), [load-testing](<https://devfeed.tech/tags/load-testing.md>), [memory](<https://devfeed.tech/tags/memory.md>), [metrics](<https://devfeed.tech/tags/metrics.md>), [monitoring](<https://devfeed.tech/tags/monitoring.md>), [mysql](<https://devfeed.tech/tags/mysql.md>), [performance](<https://devfeed.tech/tags/performance.md>), [prometheus](<https://devfeed.tech/tags/prometheus.md>), [scaling](<https://devfeed.tech/tags/scaling.md>), [temporal-concepts](<https://devfeed.tech/tags/temporal-concepts.md>)

### AI overview

This tutorial explains a load-measure-scale-repeat process for scaling a self-hosted Temporal Cluster. It covers monitoring bottlenecks, Kubernetes resource management, Temporal shard configuration, polling optimization, and persistence sizing, using MySQL, Prometheus, and Grafana.

### Source excerpt

A simple introduction to scaling Temporal Clusters with load testing and metrics

## Investigating Node.js Performance: Fastify, Express, and Memory-Heavy Log Redaction

DevFeed: [Investigating Node.js Performance: Fastify, Express, and Memory-Heavy Log Redaction](<https://devfeed.tech/articles/how-to-substantially-slow-down-your-node-js-server-28028.md>)

Original publisher: [Read original article](<https://tech.trivago.com/post/2022-09-15-how-to-substantially-slow-down-your-nodejs-server/>)

Author: Abdelrahman Abdelhafez Human code formatter @ trivago GitHub profile

Published: 2022-09-15T00:00:00Z

Content type: tutorial

Language: en

Sources: [Trivago](<https://devfeed.tech/sources/trivago.md>)

Topics: [Node.js](<https://devfeed.tech/topics/node-js.md>), [Fastify](<https://devfeed.tech/topics/fastify.md>), [Express](<https://devfeed.tech/topics/express.md>), [GraphQL](<https://devfeed.tech/topics/graphql.md>), [JavaScript](<https://devfeed.tech/topics/javascript.md>), [V8](<https://devfeed.tech/topics/v8.md>), [debugging](<https://devfeed.tech/topics/debugging.md>)

Tags: [backend](<https://devfeed.tech/tags/backend.md>), [engineering](<https://devfeed.tech/tags/engineering.md>), [express](<https://devfeed.tech/tags/express.md>), [framework](<https://devfeed.tech/tags/framework.md>), [gdpr](<https://devfeed.tech/tags/gdpr.md>), [graphql](<https://devfeed.tech/tags/graphql.md>), [load-testing](<https://devfeed.tech/tags/load-testing.md>), [node](<https://devfeed.tech/tags/node.md>), [node-js](<https://devfeed.tech/tags/node-js.md>), [performance](<https://devfeed.tech/tags/performance.md>), [profiling](<https://devfeed.tech/tags/profiling.md>), [server](<https://devfeed.tech/tags/server.md>), [v8](<https://devfeed.tech/tags/v8.md>)

### AI overview

This technical investigation examines why migrating a monolithic Node.js GraphQL server from Express to Fastify produced no production performance improvement despite substantially faster staging load-test results. Live V8 heap profiling identified log redaction as consuming large amounts of memory.

### Source excerpt

Back in March 2022, after spending a considerable amount of effort migrating our monolithic Node.js GraphQL server from

## Load Testing APIs for Holiday Traffic and Dynamic Scalability

DevFeed: [Load Testing APIs for Holiday Traffic and Dynamic Scalability](<https://devfeed.tech/articles/hey-you-busy-i-have-thousands-of-questions-to-ask-you-26527.md>)

Original publisher: [Read original article](<http://engineering.curalate.com/2018/12/31/holiday-load-prep.html>)

Published: 2018-12-31T17:00:00Z

Content type: tutorial

Language: en

Sources: [Curalate](<https://devfeed.tech/sources/curalate.md>)

Topics: [Testing](<https://devfeed.tech/topics/testing.md>), [Scalability](<https://devfeed.tech/topics/scalability.md>), [Availability](<https://devfeed.tech/topics/availability.md>), [Low Latency](<https://devfeed.tech/topics/low-latency.md>), [Network](<https://devfeed.tech/topics/network.md>), [API](<https://devfeed.tech/topics/api.md>), [data](<https://devfeed.tech/topics/data.md>), [Bash](<https://devfeed.tech/topics/bash.md>)

Tags: [api](<https://devfeed.tech/tags/api.md>), [availability](<https://devfeed.tech/tags/availability.md>), [bash](<https://devfeed.tech/tags/bash.md>), [data](<https://devfeed.tech/tags/data.md>), [forecasting](<https://devfeed.tech/tags/forecasting.md>), [holiday](<https://devfeed.tech/tags/holiday.md>), [infrastructure](<https://devfeed.tech/tags/infrastructure.md>), [load-testing](<https://devfeed.tech/tags/load-testing.md>), [low-latency](<https://devfeed.tech/tags/low-latency.md>), [network](<https://devfeed.tech/tags/network.md>), [scalability](<https://devfeed.tech/tags/scalability.md>), [testing](<https://devfeed.tech/tags/testing.md>)

### AI overview

This engineering article explains how Curalate prepared its APIs and infrastructure for increased holiday traffic. It describes using historical traffic data to estimate peak requests per second, load testing with steadily increasing request rates, and dynamic scalability to avoid over-provisioning costs.

### Source excerpt

If you're a brick-and-mortar business owner, you quickly identify patterns in your customer foot traffic, especially around the holidays when achieving your sales goals depends on both timely and quality service. If you're an e-commerce business owner, like many of Curalate's 1,000+ customers, it's really no different: holiday sales are crucial to success and they depend heavily on your site's reliability. At Curalate, we take great pride in maintaining high availability and low latency for our client integrations throughout the year. But over the "Black Fiveday" period--Thanksgiving through Cyber Monday--and the week leading up to and including the day after Christmas, we see a roughly 5x increase in network requests to our APIs from our clients' sites. Therefore it's crucial that we both design our systems to handle that increased load and perform load testing on the systems ahead of time to prove that our designs work. This post describes how we carried out load tests of our infrastructure to prepare for the holiday traffic increase on our APIs. Additionally, it highlights how our approach towards dynamic scalability reduces costs by avoiding over-provisioning. Load Test Planning Our first question was: what volume of traffic can we expect? To answer that, we consulted the last several years of data describing our holiday traffic load pattern. Second: what are the important dimensions of that traffic? For example, do we expect a majority of the traffic to be cached or uncached? Do total requests matter or only instantaneous load? Since a previous blog post discussed cached versus uncached testing, this post focuses on API request rate. Total requests in a day is interesting, but only suggests an average requests-per-second (RPS) rate. The metric we're mostly interested in is the daily peak RPS rate. This gives us an idea of the busiest moment in our day, and if we can handle that rate, we should have confidence that we can handle lesser request rates at other times

## Load Testing for Expected Increases in Traffic with Vegeta

DevFeed: [Load Testing for Expected Increases in Traffic with Vegeta](<https://devfeed.tech/articles/load-testing-for-expected-increases-in-traffic-with-vegeta-26521.md>)

Original publisher: [Read original article](<http://engineering.curalate.com/2017/12/21/expected-traffic-load-testing.html>)

Author: Reid Knight was a Software Engineer

Published: 2017-12-21T13:00:00Z

Content type: tutorial

Language: en

Sources: [Curalate](<https://devfeed.tech/sources/curalate.md>)

Topics: [Testing](<https://devfeed.tech/topics/testing.md>), [API](<https://devfeed.tech/topics/api.md>), [Caching](<https://devfeed.tech/topics/caching.md>), [rate-limiting](<https://devfeed.tech/topics/rate-limiting.md>)

Tags: [api](<https://devfeed.tech/tags/api.md>), [caching](<https://devfeed.tech/tags/caching.md>), [load-testing](<https://devfeed.tech/tags/load-testing.md>), [rate-limiting](<https://devfeed.tech/tags/rate-limiting.md>), [testing](<https://devfeed.tech/tags/testing.md>), [vegeta](<https://devfeed.tech/tags/vegeta.md>)

### AI overview

This article explains how Curalate plans and performs load testing for predictable increases in service and API traffic, including holiday peaks. It discusses dependencies, caching, staging versus production environments, rate limiting, and expected load across services.

### Source excerpt

At Curalate, our service and API traffic is fairly tightly coupled to e-commerce traffic, so any increase is reasonably predictable. We expect an increase in request rate towards the beginning of November each year, with traffic peaking at 10x our steady rate on Black Friday and Cyber Monday. Why Load Test? Curalate works directly with retail brands to drive traffic to their sites. The holiday shopping period is the most important time of the year for most of them, and we need to ensure that our experiences continue to operate at a high standard throughout. More generally, though, load testing is critical for services and APIs, especially in cases where load is expected to increase. It uncovers potential points of failure, during business hours, and hopefully prevents people from needing to wake up at 2 a.m. on a weekend. Creating a Test Plan In cases of expected load increases, it's important to understand as much as possible before diving into it. There are a few questions to ask: Is there any data available so I can understand the expected load? Is it a yearly increase - are previous years a good indication? If it's a brand new launch, what are the expectations? What are the hard and soft dependencies of the service or API that I'm testing? What sort of caching is in place? Does a 10x increase on my service cause a 10x increase on everything downstream, as well? Should we test against the active production environment, or is it feasible to spin up a staging environment with the same scaling behavior? Depending on the breadth of dependencies, it may not be possible to spin up a new duplicated environment. If I test against production, how can I ensure I don't negatively affect live traffic? Am I expecting an increase in load across services? If there are any core dependencies, what does the combined load look like at peak? How much of a buffer do I provide against the expected peak? Does my service have any rate limiting that I need to bypass or keep in mind? How

## Tsung: An Open-Source Distributed Load-Testing Tool for Multiple Protocols

DevFeed: [Tsung: An Open-Source Distributed Load-Testing Tool for Multiple Protocols](<https://devfeed.tech/articles/see-tsung-in-action-34447.md>)

Original publisher: [Read original article](<https://tapoueh.org/blog/2011/08/see-tsung-in-action/>)

Author: Dimitri Fontaine PostgreSQL Major Contributor; Author

Published: 2011-08-02T08:30:00Z

Content type: article

Language: en

Sources: [Dimitri Fontaine](<https://devfeed.tech/sources/dimitri-fontaine.md>)

Topics: [Testing](<https://devfeed.tech/topics/testing.md>), [Benchmark](<https://devfeed.tech/topics/benchmark.md>), [Erlang](<https://devfeed.tech/topics/erlang.md>), [PostgreSQL](<https://devfeed.tech/topics/postgresql.md>), [Protocol (disambiguation)](<https://devfeed.tech/topics/protocol.md>), [sessions](<https://devfeed.tech/topics/sessions.md>), [Open Source](<https://devfeed.tech/topics/open-source.md>), [Development](<https://devfeed.tech/topics/development.md>)

Tags: [benchmark](<https://devfeed.tech/tags/benchmark.md>), [erlang](<https://devfeed.tech/tags/erlang.md>), [load-testing](<https://devfeed.tech/tags/load-testing.md>), [open-source](<https://devfeed.tech/tags/open-source.md>), [postgresql](<https://devfeed.tech/tags/postgresql.md>), [protocol](<https://devfeed.tech/tags/protocol.md>), [sessions](<https://devfeed.tech/tags/sessions.md>), [testing](<https://devfeed.tech/tags/testing.md>)

### AI overview

The article introduces Tsung, an open-source, multi-protocol distributed load-testing tool built with Erlang. It describes benchmarking applications, recording and replaying sessions at high scale, PostgreSQL support, and integration with pgfouine for converting PostgreSQL logs into Tsung sessions. It also mentions the uTsung variant used in video games and a video demo.

### Source excerpt

Tsung is an open-source multi-protocol distributed load testing tool and a mature project. It's been available for about 10 years and is built with the Erlang system. It supports several protocols, including the PostgreSQL one. When you want to benchmark your own application, to know how many more clients it can handle or how much gain you will see with some new shiny hardware, Tsung is the tool to use. It will allow you to record a number of sessions then replay them at high scale. pgfouine supports Tsung and is able to turn your PostgreSQL logs into Tsung sessions, too.