Skip to content

Example projects demonstrating how to forward incoming MQTT payloads to an ElasticSearch instance in various languages.

License

Notifications You must be signed in to change notification settings

clive-jevons/mqtt-elasticsearch-forwarding

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

37 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MQTT to ElasticSearch Forwarder

This represents a collection of applications in various languages which do the same thing: Forward incoming messages from an MQTT broker to an ElasticSearch instance.

The point is trying to determine:

  • How easy is it to implement in a given language
  • How well does the solution perform under load

Docker

The infrastructure components (MQTT broker, ES instance, application) are always deployed and run in docker containers. To this end, each project provides a docker-compose.yml which can be used to start the scenario with docker-compose up -d (for example) and then you can track the progress with docker-compose logs -f.

Scaling the producer to increase load

You can start multiple producer containers in order to increase the number of messages being sent to the MQTT broker by using:

docker-compose scale producer=5

It's best to chain the commands when starting the scenario, e.g.:

docker-compose up -d ; docker-compose scale producer=5 ; docker-compose logs -f watchdog

Groovy

See the Groovy subproject.

Python

See the Python subproject.

JEE / Payara Micro

See the Payara Micro subproject.

Spring Boot

See the Spring Boot subproject.

Node.js

See the Node.js subproject.

Producer

See the producer subproject.

Watchdog

See the watchdog subproject.

About

Example projects demonstrating how to forward incoming MQTT payloads to an ElasticSearch instance in various languages.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published