All Projects → WeBankFinTech → Defibus

WeBankFinTech / Defibus

Licence: apache-2.0
DeFiBus=RPC+MQ,是基于开源消息中间件打造的安全可控的分布式金融级消息总线。

Programming Languages

java
68154 projects - #9 most used programming language

Projects that are alternatives of or similar to Defibus

Qmq
QMQ是去哪儿网内部广泛使用的消息中间件,自2012年诞生以来在去哪儿网所有业务场景中广泛的应用,包括跟交易息息相关的订单场景; 也包括报价搜索等高吞吐量场景。
Stars: ✭ 2,420 (+3308.45%)
Mutual labels:  message-bus, mq
Tinyipc
.NET inter process broadcast message bus with supporting classes
Stars: ✭ 55 (-22.54%)
Mutual labels:  message-bus
Geek Programming Books
Free programing ebooks
Stars: ✭ 412 (+480.28%)
Mutual labels:  mq
Xmall
基于SOA架构的分布式电商购物商城 前后端分离 前台商城:Vue全家桶 后台管理系统:Dubbo/SSM/Elasticsearch/Redis/MySQL/ActiveMQ/Shiro/Zookeeper等
Stars: ✭ 6,493 (+9045.07%)
Mutual labels:  mq
Plumber
A swiss army knife CLI tool for interacting with Kafka, RabbitMQ and other messaging systems.
Stars: ✭ 514 (+623.94%)
Mutual labels:  message-bus
Activemq
高性能消息监控无服务器,使用ActiveMQ消息中间件实现,使用MQ、redis、nlog 等技术实现
Stars: ✭ 13 (-81.69%)
Mutual labels:  mq
Eventmesh
EventMesh 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.
Stars: ✭ 356 (+401.41%)
Mutual labels:  message-bus
Web develop
《Python Web开发实战》书中源码
Stars: ✭ 1,146 (+1514.08%)
Mutual labels:  mq
Wheel
关于net nio os cache db rpc json web http udp tcp mq 等多个小工具的自定义实现
Stars: ✭ 45 (-36.62%)
Mutual labels:  mq
Jafka
a fast and simple distributed publish-subscribe messaging system (mq)
Stars: ✭ 697 (+881.69%)
Mutual labels:  mq
Rawrabbit
A modern .NET framework for communication over RabbitMq
Stars: ✭ 682 (+860.56%)
Mutual labels:  message-bus
Servicestack
Thoughtfully architected, obscenely fast, thoroughly enjoyable web services for all
Stars: ✭ 4,976 (+6908.45%)
Mutual labels:  mq
Gollum
An n:m message multiplexer written in Go
Stars: ✭ 883 (+1143.66%)
Mutual labels:  message-bus
Servicebus
Simple service bus for sending events between processes using amqp.
Stars: ✭ 415 (+484.51%)
Mutual labels:  message-bus
Flume Canal Source
Flume NG Canal source
Stars: ✭ 56 (-21.13%)
Mutual labels:  mq
Nats.net
The official C# Client for NATS
Stars: ✭ 378 (+432.39%)
Mutual labels:  message-bus
Vue Notifications
Vue.js agnostic library for non-blocking notifications
Stars: ✭ 644 (+807.04%)
Mutual labels:  message-bus
Kiteq
kiteq is a distributed mq framework
Stars: ✭ 757 (+966.2%)
Mutual labels:  mq
Books
Awesome Books
Stars: ✭ 66 (-7.04%)
Mutual labels:  mq
Nsq Event Bus
A tiny wrapper around NSQ topic and channel 🚀
Stars: ✭ 66 (-7.04%)
Mutual labels:  message-bus

DeFiBus(Decentralized Financial Message Bus) -- 分布式金融级消息总线

Build Status Coverage Status

       DeFiBus=RPC+MQ,是基于开源消息中间件打造的安全可控的分布式金融级消息总线。DeFiBus不仅提供了RPC同步调用,还提供了MQ的异步事件通知、事件组播和广播等常用服务调用和消息模式,同时增加了应用多中心多活、服务就近、灰度发布等分布式场景下的高可用能力。在对于机器故障的容错能力方面的增强,也让消息总线的服务更加稳定可靠,为业务提供7x24的服务。

分布式架构

architecture1

名词解释 DCN:Data Center Node(数据中心单元化节点)

系统架构

architecture2

DeFiBus主要包括以下几个组件(模块):

  • Broker:通过轻量级的Topic和Queue机制提供消息存储功能。Broker定期将Topic信息上报到NameServer中,同集群中的Broker实例上报的NameServer必须保持一致,避免路由信息不一致。

  • NameServer:NameServer提供Topic的发现和路由,每一个NameServer接受Broker上报的Topic信息,并维护Topic的路由信息供客户端查询。

  • GSL:全局服务定位(Global Service Location)服务提供服务级别的路由发现。服务可以部署在不同的区域(比如不同的数据中心、逻辑分区等),服务请求方在请求某一个具体服务时,无需关注服务部署的区域,GSL能够根据服务发现规则自动定位到具体的服务,将服务信息返回给客户端。

  • EventMesh:服务代理提供TCP/HTTP接入方式,同时允许按照协议规范开发的C、GO、Python等其他语言客户端的接入。

  • ConfigCenter(CC):配置中心,提供HTTP接入方式,比如Namesrv的寻址以及其他配置。

  • ACL:访问控制服务,TOPIC级别的IP访问控制,提供黑白名单功能。

  • SGS:服务治理系统(Service Government System),用于管理服务、服务请求、服务响应、服务路由、ACL等流程和数据。

特性列表:

Quick Start

DeFiBus的安装部署流程请参考:《DeFiBus使用指引》
examples模块中提供了最佳实践样例:defibus-examples

License

DeFiBus is licensed under Apache License.

非常感谢以下项目对开源做出的贡献

动态

Wiki 上汇总了相关动态和资讯,点此处前往查看

Contacts

微信/QQ群:

wechat_qr

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].