<!-- mobian-agent-page publisher="dailydev" canonical="https://daily.dev/posts/part-3-client-local-parallelism-jack-vanlightly-2eosw1hgl" -->

---
title: Part 3: Client-local parallelism — Jack Vanlightly
description: A deep-dive benchmark comparing blocking vs continuous client-local parallelism strategies in Kafka consumer groups and share groups. Using the Dimster...
canonical: https://daily.dev/posts/part-3-client-local-parallelism-jack-vanlightly-2eosw1hgl
twitter:card: summary_large_image
twitter:site: @dailydotdev
og:type: website
og:site_name: daily.dev
og:title: Part 3: Client-local parallelism — Jack Vanlightly | daily.dev
og:description: A deep-dive benchmark comparing blocking vs continuous client-local parallelism strategies in Kafka consumer groups and share groups. Using the Dimster...
og:url: https://daily.dev/posts/part-3-client-local-parallelism-jack-vanlightly-2eosw1hgl
og:image: https://api.daily.dev/og/posts/2EoSw1hGL.png
og:image:alt: Part 3: Client-local parallelism — Jack Vanlightly
og:image:width: 1200
og:image:height: 630
og:locale: en
---

> ## Documentation Index
> Fetch the complete documentation index at: https://daily.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Part 3: Client-local parallelism — Jack Vanlightly

**[Jack Vanlightly](https://daily.dev/sources/jack-vanlightly)** · 13 min read · 0 upvotes · 0 comments

## Summary

A deep-dive benchmark comparing blocking vs continuous client-local parallelism strategies in Kafka consumer groups and share groups. Using the Dimster benchmarking tool against Kafka 4.3.0, the post tests three configurations: consumer group blocking, consumer group continuous, and share group blocking. All three achieve 1,000 records/s throughput, but end-to-end latency differs dramatically. Consumer group continuous mode wins with ~4ms e2e latency vs ~7.5s for consumer group blocking and ~1.4s for share group blocking. Key insights include: blocking mode inflates latency due to pre-fetch buffering and coupling progress to the slowest record; continuous mode decouples polling/processing/committing for much lower latency; share groups currently only support blocking mode in the Apache Kafka clients; and share groups with multiple consumers per partition suffer from fetch clustering that builds up lag. The post concludes that consumer groups with continuous mode remain the best fit for highly parallel, low-latency workloads until share groups support continuous acknowledgment.

## Full article

daily.dev links to this article rather than hosting it. Read it at the original source: <https://jack-vanlightly.com/blog/2026/6/10/kafka-share-groups-and-parallelizing-consumption-part-3-client-local-parallelism>

## Similar posts on daily.dev

- [Kafka Queue Semantics Now GA with Share Consumer API](https://daily.dev/posts/kafka-queue-semantics-now-ga-with-share-consumer-api-aqzvx7ajg) · Confluent Blog · 1 upvotes · 0 comments
- [Apache Kafka performance \#1](https://daily.dev/posts/apache-kafka-performance-1-dc6zd9py1) · Jack Vanlightly · 5 upvotes · 1 comments
- [Scaling Java-Based Real-Time Systems: The Hidden Tradeoffs of Event-Driven Design](https://daily.dev/posts/scaling-java-based-real-time-systems-the-hidden-tradeoffs-of-event-driven-design-ef85inlwt) · InfoQ · 8 upvotes · 1 comments
- [How Apache Kafka flexed to support queues](https://daily.dev/posts/how-apache-kafka-flexed-to-support-queues-ytdb29stz) · InfoWorld · 1 upvotes · 0 comments

---

Tags: [#apache-kafka](https://daily.dev/tags/apache-kafka)

[View this post on daily.dev](https://daily.dev/posts/part-3-client-local-parallelism-jack-vanlightly-2eosw1hgl)

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://daily.dev/#organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180},"sameAs":["https://twitter.com/dailydotdev","https://github.com/dailydotdev","https://www.linkedin.com/company/daily-dev-ltd"]},{"@type":"WebSite","@id":"https://daily.dev/#website","url":"https://daily.dev","name":"daily.dev","publisher":{"@id":"https://daily.dev/#organization"},"potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://daily.dev/search?q={search_term_string}"},"query-input":"required name=search_term_string"}}]}
{"@context":"https://schema.org","@type":"TechArticle","headline":"Part 3: Client-local parallelism — Jack Vanlightly","url":"https://daily.dev/posts/part-3-client-local-parallelism-jack-vanlightly-2eosw1hgl","mainEntityOfPage":{"@type":"WebPage","@id":"https://daily.dev/posts/part-3-client-local-parallelism-jack-vanlightly-2eosw1hgl"},"datePublished":"2026-07-09T07:01:19.651Z","dateModified":"2026-07-09T07:04:53.873Z","description":"A deep-dive benchmark comparing blocking vs continuous client-local parallelism strategies in Kafka consumer groups and share groups. Using the Dimster...","image":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/f07c86f39dd04b7c1fecfdb26cf2db42?_a=AQAEuop","thumbnailUrl":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/f07c86f39dd04b7c1fecfdb26cf2db42?_a=AQAEuop","isAccessibleForFree":true,"articleSection":"Jack Vanlightly","inLanguage":"en","publisher":{"@type":"Organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180}},"author":{"@type":"Organization","name":"Jack Vanlightly","logo":"https://media.daily.dev/image/upload/s--lIrxyl_V--/f_auto,q_auto/v1781695531/logos/jack-vanlightly?_a=BAMAMiWQ0","url":"https://daily.dev/sources/jack-vanlightly"},"commentCount":0,"discussionUrl":"https://daily.dev/posts/part-3-client-local-parallelism-jack-vanlightly-2eosw1hgl","interactionStatistic":[{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":0},{"@type":"InteractionCounter","interactionType":{"@type":"CommentAction"},"userInteractionCount":0}],"keywords":"apache-kafka","timeRequired":"PT13M"}
{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://daily.dev"},{"@type":"ListItem","position":2,"name":"Jack Vanlightly","item":"https://daily.dev/sources/jack-vanlightly"},{"@type":"ListItem","position":3,"name":"Part 3: Client-local parallelism — Jack Vanlightly"}]}
```

