Coder Social home page Coder Social logo

mqtt's Introduction

HiveMQ - Railway Template

This example deploys a self-hosted version of HiveMQ.

Deploy on Railway

What is HiveMQ?

HiveMQ is a high-performance, enterprise-grade MQTT (Message Queuing Telemetry Transport) broker that enables seamless communication between devices and applications using the MQTT protocol. MQTT is widely used for real-time data exchange and communication in IoT (Internet of Things) applications, where low bandwidth and reliable messaging are crucial. HiveMQ provides various features and options for deploying it in high availability and clustered configurations.

This container is based on community edition docker image and doesn't have control center feature. If you want Enterprise Edition then update the config.xml file with necessary license information and update the Dockerfile with the Enterprise Edition base image. But project is configured to work for any docker image of hiveMQ.

Features

  1. MQTT 5.0 Support: HiveMQ supports the MQTT 5.0 specification, providing advanced features such as shared subscriptions, enhanced security, message properties, and more.
  2. High Performance: HiveMQ is designed for high performance and low latency, making it suitable for applications that require real-time communication.
  3. Scalability: HiveMQ can be easily scaled horizontally to handle a large number of concurrent connections and messages.
  4. Reliability: It ensures message delivery even in unreliable network conditions. Persistent sessions and durable message storage mechanisms prevent message loss.
  5. Security: HiveMQ offers comprehensive security features, including TLS/SSL encryption, client authentication, access control, and integration with external authentication mechanisms.
  6. Websockets: HiveMQ supports MQTT over WebSockets, allowing devices and applications to communicate over HTTP/HTTPS ports.
  7. Advanced Clustering: HiveMQ supports clustering, enabling you to set up multiple instances that work together to provide high availability and fault tolerance.
  8. Session Management: It provides flexible session management options, including session expiration, resumption, and storage.
  9. Retained Messages: HiveMQ allows the broker to store the last known state of a topic, ensuring that new subscribers immediately receive the latest data.
  10. QoS (Quality of Service): HiveMQ supports MQTT's QoS levels, ensuring that messages are delivered as required by the application's quality-of-service requirements.

โœจ Services

  • HiveMQ

๐Ÿ’โ€โ™€๏ธ How to use

  • Click the Railway button ๐Ÿ‘†
  • Add the required environment variables
  • Deploy
  • Access HiveMQ Control Center from Railway URL
  • Use can login using default credentials admin and hivemq login
  • You should see the dashboard with all analytics and metrics of your HiveMQ instance with connected clients and messages infomration in real-time dashboard
  • You can also use the MQTT Websocket client to publish and subscribe to topics
  • By default, the MQTT Websocket client is available at https://<your-railway-url>/mqtt
  • With help of reference python code example.py you can test your HiveMQ instance example
  • You can also view real-time client infomration from the HiveMQ Control Center clients
  • Also you can disconnect clients from the HiveMQ Control Center
  • HiveMQ also provides options for subcriptions and topics topics
  • Using trace functionality you can view all the messages that are published and subscribed trace
  • Finally, you can backup and restore your HiveMQ instance from the HiveMQ Control Center backup
  • Instance is configured with cluster with static discovery. you can add multiple instances to the cluster by modifying the config file config.xml and adding the instances to the static-discovery section. Follow the official docs for more information.
  • Enjoy ๐ŸŽ‰

๐Ÿ“ Notes

mqtt's People

Contributors

aravindha1234u avatar

Watchers

JamesWRC avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.