Compose版的背景

软件架构设计立足于硬件条件,脱离硬件条件的软件架构设计都是空谈。

Fox-Edge在设计阶段,边缘端设备的主流硬件为 4G内存,而且每两年翻一番。

所以Fox-Edge在设计阶段,以4G内存为基准硬件规格,然后采用的是积木式架构设计,并选择使用JAVA作为开发语言。 实际上,最终的验证和测试,效果也比较理想。

但是,市场上还有不少ARM类型的嵌入式设备和工控机,它们只有4G内存条件下,既然无法开启SWAP,扩充内存时成本又太高, 然后,这部分用户又想部署更多的Fox-Edge服务。

对于这个资源、需求、成本的矛盾中,灵狐提供了一个 Compose版 的优化方案,来解决这个问题。

文档链接

Compose版的方案

Fox-Edge的 标准版 ,包括下列相关的部分微服务

负责接入和认证能力

负责配置全局配置管理

负责周期性任务的采集

负责数据的持久化保存

负责周期快照的生成

上述五个服务,是非常常用的基础性服务,组合服务(manager-compose) ,将上述五个微服务的内部功能模块, 合并成为一个大的单体服务,那么就可以节省四个服务进程的内存空间。

Compose版的效果

同等功能和负荷条件下,标准版的Fox-Edge系统,内存占用1.85G;组合版的Fox-Edge系统,减少了四个服务,内存占用减少到0.88G。

组合版比标准版,内存使用量节省了1G内存空间。

这意味着,在小型化的ARM设备上,能够部署更多的其他功能服务。

Compose版的约束

任何方案都具有两面性,组合版同样如何,它存在如下局限性

因为manager-compose被组合成为了一个大的单体服务,被它组合的服务,不再具有微服务的特性。

也就是说,它只能用在ARM类型的嵌入式设备和工控机场景下。

它的内存占用率大幅度降低了(大约1G内存),但是由于五个模块都使用一个公共的底层网络引擎,无法发挥出多核CPU的并发能力,它们的吞吐能力下降了一倍。

所以它只能使用在低负荷环境,或者低吞吐的环境。

也就是说,它只能用在ARM类型的嵌入式设备和工控机场景下。

如果你想要高吞吐能力,还是使用Fox-Edge默认的标准版。

如果你已经充分了解了上面的约束条件,那么就可以使用Fox-Edge的compose版了

Compose版的下载

请到灵狐云端的页面下载Fox-Edge最新的初始安装包,默认的账号/密码:Fox-Edge-Public/12345678

Compose版的安装

除了安装包跟标准版不同,它的安装和使用方式,基本跟标准版相同。

具体的安装过程,可以参考标准版