ThingsBoard rule engine is based on two main components: the actor model and message queue.
Actor model enables high performance and concurrent processing of messages from device transport layer as long as server-side API calls. ThingsBoard uses Akka as an actor system implementation. There are two main actors related to the rule engine: Rule Chain Actor and Rule Node Actor.
Rule Chain actor is responsible for rule node configuration, routing messages between rule nodes, and handling queue put and ack commands. Each Rule Chain Actor represent single rule chain configured by the user. Rule Chain Actor is parent for multiple Rule Node actors.
Rule Node actor is responsible for processing of the incoming messages. The logic of message processing is highly customizable. There are many built-in implementations of the RuleNodes and you can develop your own, custom rule node implementations as well. See Rule Node Development guide for more details.
Getting started guides - These guides provide quick overview of main ThingsBoard features. Designed to be completed in 15-30 minutes.
Installation guides - Learn how to setup ThingsBoard on various available operating systems.
Connect your device - Learn how to connect devices based on your connectivity technology or solution.
Data visualization - These guides contain instructions how to configure complex ThingsBoard dashboards.
IoT Data analytics - Learn how to use rule engine to perform basic analytics tasks.
Hardware samples - Learn how to connect various hardware platforms to ThingsBoard.
Advanced features - Learn about advanced ThingsBoard features.
Contribution and Development - Learn about contribution and development in ThingsBoard.