comqtt
Comqtt is a lightweight, high-performance MQTT broker written in Go, fully compliant with MQTT v3.0, v3.1.1, and v5.0 specifications, designed for IoT and smart home projects. It can run as a standalone binary or be embedded as a library, with throughput comparable to popular brokers like Mosquitto, Mosca, and VerneMQ. Key features include TCP, WebSocket, QUIC, and Dashboard listeners with SSL/TLS support, file-based configuration for server, auth, storage, and bridges, and authentication and ACL plugins supporting Redis, HTTP, MySQL, and PostgreSQL. Messages can be bridged to Kafka by configured rules, and single-machine mode supports local storage via BoltDB, BadgerDB, and Redis. A hook design pattern enables easy development of custom Auth, Bridge, and Storage plugins. Distributed clustering is supported using Gossip and Raft protocols. A built-in web dashboard provides broker monitoring and management, and a RESTful API allows client management, blacklist control, statistics retrieval, and cluster operati