diff --git a/README.md b/README.md index 9e27b02873..e176173aae 100644 --- a/README.md +++ b/README.md @@ -13,105 +13,36 @@ ## What is EventMesh? EventMesh(incubating) is a dynamic event-driven application runtime 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. -![architecture1](docs/images/eventmesh-multi-runtime.png) +**Multi-runtime:** +![architecture1](docs/images/eventmesh-arch3.png) -**EventMesh Architecture:** +**Orchestration:** +![architecture1](docs/images/eventmesh-orchestration.png) -![architecture1](docs/images/eventmesh-runtime2.png) +**Federation:** +![architecture1](docs/images/eventmesh-federation.png) **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-connector-defibus(WIP)** : an implementation of eventmesh-connector-api, pub event to or sub event from [DeFiBus](https://github.com/webankfintech/defibus) as EventStore +* **eventmesh-connector-plugin** : plugins for connect a middleware such as RocketMQ/Kafka/Redis/Pulsar etc. +* **eventmesh-registry-plugin** : plugins for registry adapter, such as Nacos/Etcd. +* **eventmesh-security-plugin** : plugins for security adpater, such as ACL/Authentication/Authorization. +* **eventmesh-protocol-plugin** : plugins for protocol adapter, such as CloudEvents/MQTT. * **eventmesh-admin** : clients,topics,subscriptions and other management. -* **eventmesh-registry-plugin** : plugins for registry adapter. -* **eventmesh-security-plugin** : plugins for security adpater. -* **eventmesh-protocol-plugin** : plugins for protocol adapter. - -**Protocol:** - -The protocol of eventmesh is easier and more convenient, you can read more [here](docs/en/instructions/eventmesh-runtime-protocol.md) - -## Feature - -Event & Service -- [x] Pub/Sub -- [x] Request/Reply -- [ ] Event Streaming -- [ ] Event transaction -- [ ] At-least-once/at-most-once delivery guarantees - -Store Connector -- [x] RocketMQ -- [x] InMemory -- [ ] Federated -- [ ] Kafka -- [ ] Redis -- [ ] Pulsar -- [ ] RabbitMQ -- [ ] DeFiBus -- [ ] Cold storage (S3, Minio, SQL, key/value, etc...) - -Protocol -- [x] TCP -- [x] Http -- [ ] gRPC -- [ ] CloudEvents -- [ ] MQTT -- [ ] WebSocket -- [ ] AMQP -- [ ] AsyncAPI - -SDK -- [x] Java -- [ ] C -- [ ] Go -- [ ] Python - -Deploy -- [x] Sidecar -- [x] Gateway -- [x] Docker - -Metrics -- [x] OpenTelemetry -- [x] Promethus exporter - -Tracing -- [x] OpenTelemetry -- [x] Zipkin exporter -- [ ] Skywalking - -Governance -- [x] Client management -- [ ] Topic management -- [ ] Metadata registry -- [ ] Schema registry -- [ ] Dynamic config - -Choreography -- [ ] Servelss workflow -- [ ] Event function,triggers and bindings - -Security -- [ ] Auth -- [ ] ACL - -Runtime -- [ ] WebAssembly runtime ## Quick Start 1. [Store quickstart](docs/en/instructions/eventmesh-store-quickstart.md) 2. [Runtime quickstart](docs/en/instructions/eventmesh-runtime-quickstart.md) or [Runtime quickstart with docker](docs/en/instructions/eventmesh-runtime-quickstart-with-docker.md). 3. [Java SDK examples](docs/en/instructions/eventmesh-sdk-java-quickstart.md). +## Documentation +See EventMesh [Documentation](docs/en/intro.md) for all documents. + +## Roadmap +See EventMesh [Roadmap](docs/en/roadmap.md) for details. + ## Contributing Contributions are always welcomed! Please see [CONTRIBUTING](CONTRIBUTING.md) for detailed guidelines. diff --git a/README.zh-CN.md b/README.zh-CN.md index 08ebe7c924..f622c7c546 100644 --- a/README.zh-CN.md +++ b/README.zh-CN.md @@ -10,63 +10,34 @@ ## 什么是Event Mesh? EventMesh是一个动态的云原生事件驱动架构基础设施,用于分离应用程序和后端中间件层,它支持广泛的用例,包括复杂的混合云、使用了不同技术栈的分布式架构。 -![architecture1](docs/images/eventmesh-multi-runtime.png) +**多运行时:** +![architecture1](docs/images/eventmesh-arch3.png) -**EventMesh生态:** -![architecture1](docs/images/eventmesh-define.png) +**编排:** +![architecture1](docs/images/eventmesh-orchestration.png) -**EventMesh架构:** +**联邦:** +![architecture1](docs/images/eventmesh-federation.png) -![architecture1](docs/images/eventmesh-runtime.png) +**组件:** +* **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-plugin** : plugins for connect a middleware such as RocketMQ/Kafka/Redis/Pulsar etc. +* **eventmesh-registry-plugin** : plugins for registry adapter, such as Nacos/Etcd. +* **eventmesh-security-plugin** : plugins for security adpater, such as ACL/Authentication/Authorization. +* **eventmesh-protocol-plugin** : plugins for protocol adapter, such as CloudEvents/MQTT. +* **eventmesh-admin** : clients,topics,subscriptions and other management. -**EventMesh云原生结构:** - -![architecture2](docs/images/eventmesh-panels.png) - -**支持连接的事件存储:** - -* [RocketMQ](https://github.com/apache/rocketmq):RocketMQ是一个分布式消息流平台,具有低延迟、高性能和可靠性、万亿级容量和灵活的可伸缩性。 - -**关键部件:** - -* **eventmesh-runtime**:一种中间件,用于在事件产生者和使用者之间传输事件,支持云原生应用程序和微服务 -* **eventmesh-sdk-java**:当前支持HTTP和TCP协议,未来会支持gRPC等 -* **eventmesh-connector-api**:一个基于OpenMessaging api和SPI插件机制的接口层,可以有很多不同的事件存储的实现,比如IMDG,Messaging Engine和OSS等 -* **eventmesh-connector-rocketmq** : 一种基于eventmesh-connector-api的实现,该实现支持将RocketMQ作为事件存储,实现事件的发布与订阅 - -**通信协议:** +## 快速开始 +1. [Store quickstart](docs/en/instructions/eventmesh-store-quickstart.md) +2. [Runtime quickstart](docs/en/instructions/eventmesh-runtime-quickstart.md) or [Runtime quickstart with docker](docs/en/instructions/eventmesh-runtime-quickstart-with-docker.md). +3. [Java SDK examples](docs/en/instructions/eventmesh-sdk-java-quickstart.md). -eventmesh的通信协议更加简洁方便,详细内容,阅读更多[这里](docs/cn/instructions/eventmesh-runtime-protocol.md) +## 文档 +查看EventMesh [Documentation](docs/en/intro.md) 所有文档. -## RoadMap -| version | feature | -| ---- | ---- | -| v1.0.0 |Support java-sdk , tcp pub/sub, http pub| -| v1.1.0 |Support RocketMQ as eventstore| -| v1.1.1 |Support https| -| v1.2.0 |Support pluggable event store by OpenMessaging Pub/Sub API, http sub, docker| -| V1.3.0 |Support CloudEvents, event streaming| -| WIP |Support more pluggable event storage (Kafka, Pulsar, Redis, etc...)| -| WIP |Support Event schema| -| WIP |Support Event governance| -| WIP |Support Event function,triggers and bindings| -| WIP |Support Event orchestration, Servelss workflow| -| WIP |Support in-memory event store| -| WIP |Support Event transaction| -| WIP |Support Event security| -| WIP |Support multi language SDK(c\go\python\wasm)| -| WIP |Support metrics exporter| -| WIP |Support tracing exporter| -| WIP |Support at-least-once/at-most-once delivery guarantees| -| WIP |Support cold event storage (S3, Minio, SQL, key/value, etc...)| -| WIP |Support gRPC protocol| -| WIP |Support MQTT protocol| -| WIP |Support AsyncAPI| - -## 快速开始 -1. [event-store](https://rocketmq.apache.org/docs/quick-start/) (RocketMQ, ignore this step if use standalone). -2. [runtime quickstart](docs/en/instructions/eventmesh-runtime-quickstart.md) or [runtime quickstart with docker](docs/en/instructions/eventmesh-runtime-quickstart-with-docker.md). -3. [java examples ](docs/en/instructions/eventmesh-sdk-java-quickstart.md). +## Roadmap +查看EventMesh [Roadmap](docs/en/roadmap.md) 特性规划. ## 贡献 永远欢迎参与共建, 请参阅[贡献](CONTRIBUTING.zh-CN.md)了解详细指南 @@ -86,9 +57,9 @@ EventMesh enriches the