knative / knative/func

Kafka functions: architecture and design document

Open
#3,937 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Go
Stars
365
Forks
223
Avg merge
2d 3h
Merged PRs (30d)
25

Description

Document the Kafka middleware architecture for contributors and maintainers:

- How the middleware fits alongside the existing `http` and `cloudevents` middleware in func-go
- Consumer group management and offset commit strategy (at-least-once)
- Health endpoint implementation (readiness tied to partition assignment)
- Scaffolding system: how `invoke: kafka` maps to templates and generated `main.go`
- Signal handling and graceful shutdown
- Known limitations and future direction (sub-process model for multi-language support)

Contributor guide

Open the contributing guide

Research direction

Start by reading the existing http and cloudevents middleware and tracing the scaffolding entry point for `invoke: kafka` through to the generated `main.go`. Done means a contributor-facing document covers consumer groups and at-least-once commits, readiness and partition assignment, signal handling, graceful shutdown, scaffolding, limitations, and the future sub-process model.

Written by the indexing model from the issue text.

Assessment

Tech stack
go, kafka
Domain
backend, documentation, stream-processing
Issue type
Documentation
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
55/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.