Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

mqtt-kafka feature (baseline) #190

Closed
14 tasks done
jfallows opened this issue Mar 29, 2023 · 0 comments
Closed
14 tasks done

mqtt-kafka feature (baseline) #190

jfallows opened this issue Mar 29, 2023 · 0 comments
Assignees
Labels
enhancement New feature or request

Comments

@jfallows
Copy link
Contributor

jfallows commented Mar 29, 2023

MQTT v5 specification
MQTT v3.1.1 specification

Baseline

  • binding-mqtt handles network protocol
    • encoding and decoding mqtt protocol frames (v5)
    • lifecycle of publish and subscribe application level streams
    • flow control of multiple subscriber application streams on the same network stream
    • security guard integration via CONNECT packet, password field, e.g. jwt access token
    • support load balancer bypass via server redirection
  • binding-mqtt-kafka handles the mapping
    • publish qos 0 as produce, acks none
    • subscribe qos 0 as fetch
    • subscribe retained as fetch log compacted
    • session stealing, group-wide not just same instance, requires async coordination across instances
    • last will messages delivered after will delay
      • will message delivery canceled if client reconnects
    • session state storage abstraction
      • log-compacted kafka topic, queryable by clientId message key, configurable name
      • subscription state as log-compacted topic, queryable by clientId message key, configurable name
        • support out-of-band subscribe or unsubscribe for client
    • session expiry via consumer group offset on sessions kafka topic
    • request-response over mqtt maps response topic to zilla:reply-to topic
    • support load balancer bypass via server redirection
@jfallows jfallows converted this from a draft issue Mar 29, 2023
@jfallows jfallows added the enhancement New feature or request label Mar 29, 2023
@jfallows jfallows changed the title mqtt-kafka feature mqtt-kafka feature (baseline) Oct 15, 2023
@github-project-automation github-project-automation bot moved this from In Progress to Done in Zilla Roadmap Oct 15, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
Status: Done
Development

No branches or pull requests

2 participants