CrossBar.IO - 用于分布式和微服务应用程序的开源平台

2021-05-08 22:55:56

CrossBar.io是用于分布式和微服务应用程序的开源网络平台。它实现了开放式Web应用程序消息传递协议(WAMP),功能丰富,可扩展,强大,安全。让Crossbar.io照顾消息的硬部分,因此您可以专注于您的应用程序和#39;

CrossBar.io正在推动内部内容应用程序。以下是Crossbar.io如何连接设备,系统和人员:

使用CrossBar.io,您可以创建分布式多语言应用程序,其中组件使用发布&amp进行通信;订阅和路由远程过程调用。

WAMP客户端库可用于15种语言,使您可以将任何东西连接到CrossBar.io。

在组件级别而不是整个项目中选择作业的正确工具。

与发布&订阅模式,应用程序组件订阅主题以在其他组件发布到这些主题时收到通知。

组件将数据发布到CrossBar.IO主题,路由器将事件调度到目前订阅主题的所有组件。使用发布&订阅模式允许您的应用程序组件实时将信息分发到其他组件。

使用路由远程过程调用模式,任何组件都可以注册任何其他组件可以调用的过程。

CrossBar.io将呼叫路由到注册相应过程的组件,并将结果返回给呼叫者。

远程过程调用模式可以用作安全命令和amp;控制通道,无论被叫组件所在的位置。

这里' s基本应用程序组件使用其中一个autobahn wamp库时。

// 1)订阅主题以接收事件函数Onhello(args){控制台。日志("有事件:",args [0]); } 会议 。订阅(' com.myapp.hello',onhello); // 2)发布活动会议。发布(' com.myapp.hello',['您好,世界!']); // 3)注册一个远程调用函数Add2(args)的过程{return args [0] + args [1]; } 会议 。注册(' com.myapp.add2',Add2); // 4)调用远程过程会话。呼叫(' com.myapp.add2',[2,3])。然后(函数(结果){控制台。日志("得到结果:"结果);});

#1)订阅一个主题以接收事件def Onhello(msg):print(" get事件:{}" formats(msg))会话。订阅(Onhello,' com.myapp.hello')#2)发布一个事件会话。发布(' com.myapp.hello'和#39;您好,世界!')#3)注册远程调用def add2(x,y)的过程:返回x + y会话。注册(Add2,' com.myapp.add2'); #4)调用远程过程结果=从会话产生的产量。致电(' com.myapp.add2',2,3)打印("得到结果:{}"。格式(结果))

// 1)订阅一个主题,以接收事件void onhello(const anyvec& args,const normap& kwargs){cout< "有活动:" << Any_cast<字符串> (args [0])<< endl; } 会议 。订阅(" com.myapp.hello",& onhello); // 2)发布活动会议。发布(" com.myapp.hello",{string("你好,世界!")}); // 3)注册一次远程调用任何Add2(Const AnyVec& args,const Anymap& kwargs){return any_cast< uint64_t> (args [0])+ Any_cast< uint64_t> (args [1]); } 会议 。提供(" com.myapp.add2",& add2); // 4)调用远程过程会话。致电(" com.mathservice.add2",{2,3})。然后([&](未来<任何> f){cout<< 34;"<<<<<<<<<<< ;< endl;});

我们认为,安全性是重要的。我们也知道安全是一个过程,而不是结果。

我们考虑安全的每一步,从协议和软件设计中可以快速部署错误修正。

裁剪在终端设备上没有打开的端口,但在CrossBar.io路由器上。保护,防御和更新这比潜在数百万设备更容易。

perm_identity crossbar.io具有多种身份验证机制,以满足您的需求,包括通过椭圆曲线键的身份验证 - 以及使用自己的动态认证组件的可能性。

Line_Style在各个客户端操作的级别存在细粒度的客户端授权 - 以及使用自己的动态授权组件的可能性。

autorenew我们只使用最新的加密,从默认配置中删除破损的密码,并保留我们的项目依赖关系。

治愈与安全相关问题的修复具有绝对优先级。外出的工具允许非常快速的版本,以便修复程序快速到达我们的用户。

VPN_KEY端到端有效载荷加密可以对折衷路由器来保护应用程序数据。 (alpha状态)

以下区域中的光标通过云中运行的CrossBar.io实例同步:

它' s核心是强大的开放式WAMP协议,它会根据应用程序组件之间处理所有连接需求。

REST桥接在REST消息和WAMP消息之间配置映射。涵盖所有四个WAMP互动:

MQTT经纪人全部MQTT经纪人作为现有经纪人的替代品。 MQTT自动映射到WAMP主题。 MQTT订阅者收到WAMP Publishes,反之亦然。

WAMP协议周围有一个开源软件的生态系统。这意味着能够为您的用例选择合适的解决方案,没有供应商锁定以及修复和延伸自己的可能性。

Crossbar.io在AGPL V3下发布。它可以用于商业项目,因为路由器许可证不会影响任何WAMP或其他客户端。

CrossBar.io是最具特色丰富和最佳测试的WAMP路由器,但可能会使用其他实施的案例最能为您服务。 CrossBar.IO项目为Python,JavaScript(浏览器和NodeJS)和C ++提供了三个(autobahn libriess)中的三个。 AutoBahn Library Licenses以及大多数其他客户实施的许可证允许在商业项目中使用。 你可以参加,例如, 如果您有目前未涵盖的用例,则建议。 CrossBar.io是由CrossBar.io GmbH启动的开源项目。 我们拥有越来越多的用户社区和积极的社区贡献。 我们的使命是将中间件带到下一级 - IOT。 社区支持论坛