go-mqtt-broker

command module
v0.0.0-...-4e8a67a Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 14, 2024 License: MIT Imports: 9 Imported by: 0

README

go-mqtt-broker

TO DO

Backend

  • Connected MQTT
  • Publish Qos 0,1,2
  • Subscribe Qos 0,1
  • Ping
  • UnSubscribe
  • Endpoint tree mqtt topics
  • Endpoint info mqtt topic
  • Save Username and Password on json and validate
  • Save Username and Password on redis or DB
  • Specific rules permission and security
  • TLS authenticator

Frontend

  • Tree topics viewer
  • Info topic by topic-info endpoint
  • General information about total of messages,sessions,subscripts...
  • login
  • save and edit username and password
  • save and edit rules permission and security

How to Run

If you prefer, you can run it using docker-compose. It is a better way to execute the code since it specifies all the parameters in a single file. The correct command is:

Docker Compose

docker-compose up -d --build

But is possible to run using a docker command, like a bellow:

Docker

Frontend
docker build -t broker-management  .
docker run -d --name broker-management -p 3000:8000 --network=broker broker-management 
Backend
docker build -t broker-mqtt  .
docker run -d --name broker-mqtt-1 -p 8080:8080 -p 1883:1883 --network=broker broker-mqtt 

Testing

Using 500 clients publishing 100 messages, each message on a different topic. It was executed 12 times and averaged in groups of 4 for an average.

Broker Name Highest (msg/s) Average (msg/s) Lowest (msg/s)
go-mqtt-broker - - -
Mosquitto _ - -
EMQX - - -

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
internal
api
pkg

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL