---
title: Open source projects in TB
tags: Third-party
image:
---
# Open source projects in TB
> **[Kafka](https://kafka.apache.org/)**
```!
Apache Kafka is an open-source stream-processing software platform. ThingsBoard uses Kafka to persist incoming telemetry from HTTP/MQTT/CoAP transpots until it is processed by the rule engine. ThingsBoard also uses Kafka for some API calls between micro-services.
```
> **[Redis](https://redis.io/)**
```!
Redis is an open source (BSD licensed), in-memory data structure store used by ThingsBoard for caching. ThingsBoard caches assets, entity views, devices, device credentials, device sessions and entity relations.
```
> **[Zookeeper](https://zookeeper.apache.org/)**
```!
Zookeeper is an open-source server which enables highly reliable distributed coordination. ThingsBoard uses Zookeeper to address requests processing from a single entity (device,asset,tenant) to a certain ThingsBoard server and guarantee that only one server process data from particular device at a single point in time.
Note: Zookeeper is also used by Kafka, so there was almost no reasons to use two different coordination services (Consul, etcd) in parallel.
```
> **[HAProxy]((https://www.haproxy.org/))**
```!
ThingsBoard team recommend to use HAProxy for load balancing. You can find the reference haproxy.cfg configuration that corresponds to the architecture diagram.
```
> **[RabbitMQ](https://www.rabbitmq.com/)**
```
...
```
> **[PostgreSQL](https://www.postgresql.org/)**
```
...
```
> **[Prometheus](https://prometheus.io/)**
```
...
```