EventMesh(incubating) is a dynamic cloud-native eventing infrastruture used to decouple the application and backend middleware layer, which supports a wide range of use cases that encompass complex multi-cloud, widely distributed topologies using diverse technology stacks.
EventMesh Ecosystem:
EventMesh Architecture:
EventMesh Cloud Native:
Components:
- eventmesh-runtime : an middleware to transmit events between event producers and consumers, support cloud native apps and microservices.
- eventmesh-sdk-java : currently supports HTTP and TCP protocols.
- eventmesh-connector-api : an api layer based on OpenMessaging api and SPI pluggin, which can be implemented by popular EventStores such as IMDG, Messaging Engine and OSS etc.
- eventmesh-connector-plugin : plugins for connector.
- eventmesh-connector-standalone : an implementation of eventmesh-connector-api, pub event to or sub event from InMemory as EventStore.
- eventmesh-connector-rocketmq : an implementation of eventmesh-connector-api, pub event to or sub event from RocketMQ as EventStore.
- eventmesh-connector-kafka(WIP) : an implementation of eventmesh-connector-api, pub event to or sub event from Kafka as EventStore.
- eventmesh-connector-redis(WIP) : an implementation of eventmesh-connector-api, pub event to or sub event from Redis as EventStore.
- eventmesh-admin : clients,topics,subscriptions and other management.
- eventmesh-registry-plugin : plugins for registry.
- eventmesh-security-plugin : plugins for security.
Protocol:
The protocol of eventmesh is easier and more convenient, you can read more here
Event & Service
- Pub/Sub
- Request/Reply
- Event Streaming
- Event transaction
- At-least-once/at-most-once delivery guarantees
Store
- RocketMQ
- InMemory
- Kafka
- Redis
- Pulsar
- RabbitMQ
- DeFiBus
- Cold storage (S3, Minio, SQL, key/value, etc...)
Protocol
- TCP
- Http
- gRPC
- CloudEvents
- MQTT
- AsyncAPI
SDK
- Java
- C
- Go
- Python
Deploy
- Sidecar
- Gateway
- Docker
Metrics
- OpenTelemetry
- Promethus exporter
Tracing
- OpenTelemetry
- Zipkin exporter
- Skywalking
Governance
- Client management
- Topic management
- Metadata registry
- Schema registry
- Dynamic config
Choreography
- Servelss workflow
- Event function,triggers and bindings
Security
- Auth
- ACL
- Event-store (RocketMQ, ignore this step if use standalone).
- Runtime quickstart or Runtime quickstart with docker.
- Java examples .
Contributions are always welcomed! Please see CONTRIBUTING for detailed guidelines.
You can start with the issues labeled with good first issue. GitHub Issues
EventMesh enriches the CNCF CLOUD NATIVE Landscape.
Apache License, Version 2.0 Copyright (C) Apache Software Foundation.
WeChat group:
Mailing Lists:
Name | Description | Subscribe | Unsubscribe | Archive |
---|---|---|---|---|
Users | User support and questions mailing list | Subscribe | Unsubscribe | Mail Archives |
Development | Development related discussions | Subscribe | Unsubscribe | Mail Archives |
Commits | All commits to repositories | Subscribe | Unsubscribe | Mail Archives |