A comprehensive guide to implementing and managing ThingWorx IoT Streams for enterprise IoT applications.
This documentation provides practical guidance for leveraging ThingWorx IoT Streams to:
- Export data from ThingWorx to external systems
- Implement durable queues for reliability
- Design scalable streaming architectures
- Integrate with Kafka and Azure Event Hub
- External Routing: Stream property updates, events, and custom payloads to external consumers
- Durable Queues: Persist internal queues to external brokers for restart protection
- Scalable Architecture: Design patterns for high-throughput and high-availability scenarios
- Practical Examples: Working code samples and deployment configurations
This guide is designed for:
- ThingWorx developers implementing data export scenarios
- Platform architects designing IoT streaming solutions
- DevOps engineers deploying and managing IoT Stream infrastructure
- System integrators connecting ThingWorx with enterprise systems
- ThingWorx 10.0+ with IoT Streams capability
- Basic understanding of ThingWorx entities and services
- Familiarity with message queuing concepts (Kafka/Azure Event Hub)
- Development environment with appropriate access permissions
- Core Concepts: Start with terminology and fundamental concepts
- Configuration: Learn to set up Queue Providers and IoT Streams
- Implementation: Follow practical examples and use cases
- Scaling: Apply architectural patterns for production deployments
This guide is organized into focused chapters covering:
- Core terminology and concepts
- Queue provider configuration
- IoT Stream entity setup
- External routing patterns
- Durable queue implementation
- Scaling considerations
- Troubleshooting and monitoring
- Author: Xu Desheng (dxu@ptc.com)
- Technical Review: Rosu, Vladimir (vrosu@ptc.com)
- Software Version: ThingWorx 10.0.1
- Documentation Version: 1.1.0
- Last Updated: 2025-09-30
For questions, feedback, or additional support, please contact the authors or refer to the official ThingWorx documentation.
- accept review comment from Vladimil
- enable github publish PTCInc/iot_stream
- release due to dead line
- disabled github publish since it's not approved yet.
- Add README-first.pdf
- Intialized the publish process from internal gitlab to public github repo.
I accept the PTC End User License Agreement (https://www.ptc.com/en/documents/legal-agreements/on-premise-license-agreements) and agree that any software downloaded/utilized will be in compliance with that Agreement. However, despite anything to the contrary in the License Agreement, I agree as follows:
I acknowledge that I am not entitled to support assistance with respect to the software, and PTC will have no obligation to maintain the software or provide bug fixes or security patches or new releases.
The software is provided “As Is” and with no warranty, indemnitees or guarantees whatsoever, and PTC will have no liability whatsoever with respect to the software, including with respect to any intellectual property infringement claims or security incidents or data loss.