# backend-optimization

Published articles for backend-optimization.

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

## Before You Buy Another Server: Squeezing a Read-Heavy API for Max RPS

DevFeed: [Before You Buy Another Server: Squeezing a Read-Heavy API for Max RPS](<https://devfeed.tech/articles/before-you-buy-another-server-squeezing-a-read-heavy-api-for-max-rps-95276.md>)

Original publisher: [Read original article](<https://hackernoon.com/before-you-buy-another-server-squeezing-a-read-heavy-api-for-max-rps?source=rss>)

Author: navaprasad maram

Published: 2026-10-22T08:18:30Z

Content type: article

Language: en

Sources: [HackerNoon](<https://devfeed.tech/sources/hackernoon.md>)

Topics: [API](<https://devfeed.tech/topics/api.md>), [Streaming](<https://devfeed.tech/topics/streaming.md>), [read-replica](<https://devfeed.tech/topics/read-replica.md>)

Tags: [api](<https://devfeed.tech/tags/api.md>), [api-latency-reduction](<https://devfeed.tech/tags/api-latency-reduction.md>), [api-load-testing](<https://devfeed.tech/tags/api-load-testing.md>), [api-performance-optimization](<https://devfeed.tech/tags/api-performance-optimization.md>), [api-scalability](<https://devfeed.tech/tags/api-scalability.md>), [async](<https://devfeed.tech/tags/async.md>), [backend-optimization](<https://devfeed.tech/tags/backend-optimization.md>), [pipelining](<https://devfeed.tech/tags/pipelining.md>), [redis](<https://devfeed.tech/tags/redis.md>), [scalability](<https://devfeed.tech/tags/scalability.md>), [scaling-a-news-api](<https://devfeed.tech/tags/scaling-a-news-api.md>), [serialization](<https://devfeed.tech/tags/serialization.md>), [server](<https://devfeed.tech/tags/server.md>), [streaming](<https://devfeed.tech/tags/streaming.md>), [system-architecture](<https://devfeed.tech/tags/system-architecture.md>)

### AI overview

For a read-heavy inventory API, the author's sequence for improving per-instance throughput was to eliminate request-time work, reduce Redis round trips, stream results, then tune the server and network stack. Redis stored pre-rendered JSON bytes, which the service concatenated without parsing or serialization; ingestion paid the rendering cost, and two response shapes required denormalized copies. Grouping SKU-location data in Redis hashes reduced lookups, while a thread-safe async Lettuce client used one multiplexed connection per node; shorter timeouts, replica reads and topology refresh addressed failure and cluster load. Async callbacks fed a BlockingQueue consumed by a request thread writing chunked responses as results arrived. Netty benchmarked fastest, but the team chose Tomcat with more threads because its near-benchmark capacity was easier for the team to operate. HTTP/2 remained optional for clients that negotiate it, and the team retained TLS on both network hops despite the measured performance cost. Results depend on workload and infrastructure; the article recommends measuring compute time separately from delivery time.

### Source excerpt

Learn how to squeeze maximum RPS from a read-heavy API before buying more servers--using zero-serialization, Redis pipelining, and response streaming.