架构说明

WeEvent主要使用Spring Boot框架开发。分为BrokerGovernance两个子模块,Broker负责事件发布和订阅以及访问区块链FISCO-BCOSGovernance提供一个Web管理端实现事件治理。整个服务使用Nginx实现负载均衡。

模块说明

  • Nginx

    WeEvent服务对外统一的访问入口,负责服务请求的负载均衡。支持RESTfulJsonRPCSTOMPMQTT等协议,以及Java SDK

  • Broker

    WeEvent的事件代理模块,提供核心的事件发布订阅Publish/SubscribeTopic管理功能。

    其中,使用Redis缓存事件,使用Zookeeper主备切换。

  • Governance

    WeEvent的事件治理模块,提供一个Web管理端。

    其中,使用Mysql数据库存储Topic的统计数据,根据业务需要使用WeBase进行区块链管理。

  • FISCO-BCOS

    WeEvent的事件永久存储在区块链FISCO-BCOS上,一个区块链可以对应一个或者多个WeEvent服务。

架构设计

../_images/WeEventArchitecture.png