Skip to content

source code of the live coding demo for "Building resilient and scalable API backends with Apache Pulsar and Spring Reactive" talk held at ApacheCon@Home 2021

License

Notifications You must be signed in to change notification settings

lhotari/reactive-iot-backend-ApacheCon2021

Repository files navigation

reactive-iot-backend

The is the source code of the live coding demo for "Building resilient and scalable API backends with Apache Pulsar and Spring Reactive" talk held at ApacheCon@Home 2021 by Lari Hotari.

Update 12/2023: This example project has been updated to use latest versions of Pulsar Reactive Client and Spring for Apache Pulsar. This code base uses Pulsar Reactive Client directly, without the special annotation support Spring for Apache Pulsar.

Running

Run each of the commands in a separate terminal window/tab.

Start Pulsar in docker

Make sure that ports 8080 and 6650 are available.

docker run -it -p 8080:8080 -p 6650:6650 apachepulsar/pulsar:3.1.1 /pulsar/bin/pulsar standalone -nss -nfw

Start the application

./gradlew bootRun

The application starts on port 8081.

Generate 1 million telemetry events with a shell script and curl

{ for i in {1..1000000}; do echo '{"n": "device'$i'/sensor1", "v": '$i'.123}'; done; } \
    | curl -X POST -T - -H "Content-Type: application/x-ndjson" localhost:8081/telemetry

Stream events to console with curl

curl -N localhost:8081/firehose

License

This is Open Source Software released under the Apache Software License 2.0.

References

Questions

About

source code of the live coding demo for "Building resilient and scalable API backends with Apache Pulsar and Spring Reactive" talk held at ApacheCon@Home 2021

Topics

Resources

License

Stars

Watchers

Forks

Languages