11个版本
0.3.6 | 2022年11月21日 |
---|---|
0.3.4 | 2022年11月3日 |
0.3.3 | 2022年10月31日 |
0.3.2 | 2022年10月17日 |
0.3.1 | 2022年10月12日 |
在WebAssembly中排名413
每月下载70次
在10个软件包中使用(9个直接使用)
1MB
24K SLoC
宇宙宇宙
cosmic-space
是宇宙倡议的一部分,这是一个WebAssembly编排框架。
宇宙倡议框架中的概念存在于两个维度之一:宇宙或超宇宙维度。
进行中
此框架处于开发中,尚未准备好用于生产。它已准备好接受社区反馈和讨论。
术语
为了避免与其它域名冲突,宇宙倡议中的许多概念都采用了天体物理学概念的名字。
- 宇宙 - 框架连接到的一切
- 粒子 - 一种可以发送和接收波并执行某些功能资源的资源。
粒子有类型(机械,数据库,文件,用户等...) - 点 - 一个通常标识粒子的地址
- 波 - 一个消息,波外壳包含路由:到 & 来自 以及描述处理和安全性的各种其他字段。波核心是定向的或反射的(请求或响应),并且紧密遵循http请求/响应格式。
- 机械 - 一个实现
mechtron
&cosmic-space
框架的WebAssembly组件,因此能够发现并与其他宇宙中的粒子通信... 机械也是扩展任何其他功能的机制,通过拦截、
解释并与底层资源通信,以便它能够理解。 - 控制 - 一个允许外部连接到宇宙的端点粒子。外部的控制实现
cosmic-space
软件包(或针对其他语言的自动生成的serde模型)以与宇宙通信 - 宇宙织物 - 这是粒子之间的空间,波在其中传播
- 宇宙维度 - 一个简化了的宇宙视图/api,不涉及安全或基础设施问题
- 超宇宙维度 - 强制安全性和编排(配置、分片、负载均衡等)的基础设施层
宇宙维度
此软件包(宇宙宇宙)提供与宇宙织物和宇宙维度内的其他粒子交互的API和实用工具。
通用维度允许粒子几乎无需处理编排或安全即可与宇宙织物和其他粒子交互。像安全、配置、分片、负载均衡等被视为常见基础设施概念的担忧,都由Hyperversal维度在后台管理。
将宇宙与超维度之间的关注点分离的目的是将尽可能多的系统复杂性推入一个中心位置进行处理,这样就可以减少与各种粒子的复杂性和变化。复杂性较低的粒子更容易实现,并且出错的可能性更小,因为每个粒子中的逻辑重复较少。
相反,cosmic-hyperspace
是用于管理安全和编排的包。
安全示例
例如,让我们检查粒子之间的授权。我们有一个源粒子向目标粒子发送波,而目标粒子要求有指向的波需要授权。
源粒子简单地发送波,没有任何凭证或令牌或任何东西... 它表现得好像没有安全。在幕后,当波穿越宇宙织物时,它进入超维度,并检查源粒子的授权,波要么被传递到目标粒子,要么被拒绝并返回给源粒子作为错误。
请注意,作为宇宙维度一部分的目标粒子不会努力授权指向的波--它只是假设它收到的任何波都必须是授权的,否则就不会被投递。
当然,当源粒子组件没有权限波动目标粒子时,二维关注点的隔离将会发生冲突。因此,宇宙并非完全不知道超维度,但至少在两端代码上都有很大的简化。
依赖关系
~10–19MB
~278K SLoC