Home
Softono

Stream

Open source Java
339
Stars
64
Forks
0
Issues
44
Watchers
6 months
Last Commit

 About Stream

Stream supports lightweight messaging within Spring-based applications and supports integration with external systems through declarative adapters

Platforms

Web Self-hosted

Languages

Java PHP

Need Help Installing Stream?

We provide expert installation service for this software. Our team will install, configure, and secure Stream on your server. plans start at just $30.

Stream

Maven Central License

English | 中文

Overview

Stream supports lightweight messaging within Spring-based applications and supports integration with external systems through declarative adapters. These adapters provide a higher level of abstraction than Spring's support for remote processing, messaging, and scheduling. The main goal of Stream is to provide a simple model for building enterprise integration solutions while maintaining separation of concerns, which is essential for producing maintainable and testable code.

Lightweight messaging within Stream-based applications, such applications are built by assembling fine-grained reusable components to form higher-level functions. Through careful design, these processes can be modularized and reused at a higher level. Stream also provides a variety of channel adapters and gateways for communicating with external systems. Channel adapters are used for one-way integration (send or receive), asynchronous message high-performance processing framework, fixed thread asynchronous processing of messages, and support for batch processing of messages.

flow

Features

  • Supports Kafka, MQTT, Redis, RabbitMQ, Pulsar message sources and sinks and supports expansion
  • Message source processing supports two processing methods: round-robin and random
  • Message processing supports extensible interceptors
  • Support SpringBoot2 and SpringBoot3

Requirements

Compilation requires JDK 11 and above, Maven 3.2.5 and above.

Integrated

If you use Maven, you just need to add the following dependency in pom.xml

Spring Boot2 version

<dependency>
    <groupId>io.github.wendy512</groupId>
    <artifactId>stream-core</artifactId>
    <version>2.0.0</version>
</dependency>

Add corresponding component dependencies according to your needs, example mqtt component

<dependency>
    <groupId>io.github.wendy512</groupId>
    <artifactId>stream-mqtt</artifactId>
    <version>2.0.0</version>
</dependency>

Supports the following components

  • stream-mqtt
  • stream-kafka
  • stream-pulsar
  • stream-rabbitmq
  • stream-redis

Spring Boot3 version

The jdk version must be 17 or above

<dependency>
    <groupId>io.github.wendy512</groupId>
    <artifactId>stream-core-springboot3</artifactId>
    <version>2.0.0</version>
</dependency>

Add corresponding component dependencies according to your needs, example mqtt component

<dependency>
    <groupId>io.github.wendy512</groupId>
    <artifactId>stream-mqtt-springboot3</artifactId>
    <version>2.0.0</version>
</dependency>

Supports the following components

  • stream-mqtt-springboot3
  • stream-kafka-springboot3
  • stream-pulsar-springboot3
  • stream-rabbitmq-springboot3
  • stream-redis-springboot3

How to use

Reference Wiki

Examples

License

Stream is based on the Apache License 2.0 agreement, and Stream relies on some third-party components whose open source agreement is also Apache License 2.0.

Contact