
smartcitiesdata/discovery_streams该镜像提供Kafka消息到WebSocket的实时转发能力,通过动态发现Kafka集群中的主题,自动创建对应的WebSocket通道,使客户端可通过WebSocket实时接收Kafka主题消息,简化实时数据流转场景的部署流程。
ws://<服务地址>:<端口>/<主题名称>适用于需要实时监控Kafka消息的场景,如运维监控、业务指标实时看板等,通过WebSocket将数据推送至前端监控页面。
为Web前端应用提供实时数据来源,如仪表盘、实时排行榜、动态更新的业务数据展示等。
作为中间件连接Kafka消息系统与WebSocket客户端,实现跨系统的实时消息分发,适用于微服务架构中的实时通信场景。
快速搭建Kafka消息可视化环境,开发人员无需编写复杂消费者代码,通过浏览器即可查看Kafka主题消息。
| 环境变量名 | 描述 | 默认值 | 必需 |
|---|---|---|---|
| KAFKA_BOOTSTRAP_SERVERS | Kafka引导服务器地址列表 | localhost:9092 | 是 |
| WEBSOCKET_PORT | WebSocket服务监听端口 | 8080 | 否 |
| TOPIC_DISCOVERY_INTERVAL | 主题发现间隔时间(秒) | 60 | 否 |
| MESSAGE_MAX_SIZE | 单条消息最大字节数 | *** (1MB) | 否 |
| LOG_LEVEL | 日志级别(DEBUG/INFO/WARN/ERROR) | INFO | 否 |
| KAFKA_CONSUMER_GROUP_ID | Kafka消费者组ID | kafka-websocket-bridge | 否 |
bashdocker run -d \ --name kafka-ws-bridge \ -p 8080:8080 \ -e KAFKA_BOOTSTRAP_SERVERS="kafka-node1:9092,kafka-node2:9092" \ -e TOPIC_DISCOVERY_INTERVAL=30 \ -e LOG_LEVEL=DEBUG \ your-registry/kafka-websocket-bridge:latest
yamlversion: '3.8' services: kafka-ws-bridge: image: your-registry/kafka-websocket-bridge:latest container_name: kafka-ws-bridge ports: - "8080:8080" environment: - KAFKA_BOOTSTRAP_SERVERS=kafka:9092 - WEBSOCKET_PORT=8080 - TOPIC_DISCOVERY_INTERVAL=30 - LOG_LEVEL=INFO depends_on: - kafka restart: unless-stopped kafka: image: confluentinc/cp-kafka:7.3.0 container_name: kafka ports: - "9092:9092" environment: - KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://kafka:9092 - KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR=1 - KAFKA_ZOOKEEPER_CONNECT=zookeeper:2181 depends_on: - zookeeper zookeeper: image: confluentinc/cp-zookeeper:7.3.0 container_name: zookeeper environment: - ZOOKEEPER_CLIENT_PORT=2181
通过WebSocket客户端连接指定主题通道,示例代码(JavaScript):
javascript// 连接名为"user-tracking"的Kafka主题通道 const ws = new WebSocket('ws://localhost:8080/user-tracking'); ws.onmessage = function(event) { console.log('Received Kafka message:', event.data); }; ws.onopen = function() { console.log('WebSocket connection established'); }; ws.onclose = function() { console.log('WebSocket connection closed'); };
KAFKA_CONSUMER_GROUP_ID为唯一值,避免与其他消费者组冲突





manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务