Object-Stream Mapping
Stream any Java object graph into Event Streaming Platforms and read it vice versa. ![]() |

Object-Stream
MicroStream enables you to publish any Java object graph of any complexity or any subgraph into any event streaming platform and vice versa reading it.

No Limitations
With MicroStream any object can be serialized. No annotations, special interfaces like Serializable, superclasses or other internal configurations required. Even third-party API objects are supported.

Super-fast
MicroStream uses a highly optimized format that is made for ultra-high-speed data transfer between producers and consumers over event streaming platforms. 20x faster than Java Serialization!

Highly Secure
Different to Java Serialization, MicroStream transfers data only, but never class information. Thus, injecting and executing malicious code automatically through deserialization is impossible.
Supported Platforms


Some Code
MicroStream Object-Stream-Mapping is Ultra-fast & Super Easy to Use
Object to Publish
You can use any Java class (POJO). No annotations, no special interfaces like Serializable, no superclasses required. Even objects of third-party APIs can be used.
class Customer { private String name; private Address address; private List<Purchase> purchases; // constructors, getter, setter, … }
Producer
KafkaObjectStreamProducer<String, Customer> producer = KafkaObjectStreamProducerFoundation.<String,Customer>New() .setScope(ObjectStreamScope.Dynamic("customers")) .setKafkaTopicProvider(KafkaTopicProvider.Constant("acquired-customers")) .setServer("host:port") .createProducer() ; producer.produce(new Customer(/*...*/));
Consumer
KafkaObjectStreamConsumer<String, Customer> consumer = KafkaObjectStreamMapping.<String, Customer>ConsumerFoundation() .setScope(ObjectStreamScope.Dynamic("customers")) .setKafkaTopicSubscriber(KafkaTopicSubscriber.New("acquired-customers")) .setServer("host:port") .setConsumeEarliest("customers-group1") .createConsumer() ; consumer.consume((kv, error) -> { System.out.println("Received customer = " + kv.value()); });
Use any JVM Technologies






