2025上半年,最新 AI实践都在这!20+ 应用案例,任听一场议题就值回票价 了解详情
写点什么

Infiniflow:基于 OSGI 和 SCA 的下一代分布式应用服务器

  • 2008-02-21
  • 本文字数:1716 字

    阅读完需:约 6 分钟

Paremus 最近发布了 Infiniflow 的1.2 版,它是基于OSGi 和SCA 的下一代分布式应用服务器。InfoQ 采访了Paremus 的市场经理Andrew Rowney 以了解关于这次发布和Infiniflow 的新的应用服务器模型的更多细节。

Rowney 首先说明 Infiniflow 是基于 OSGi SCA 的,这使它按照应用服务器的范式——组件被写成一系列的 OSGi 模块,通过 SCA 绑定被链接到外部服务,并且 Infiniflow 为部署于其上的应用提供了生命周期管理、监视、伸缩性和故障恢复功能。Rowney 还给出了使用 Infiniflow 开发应用的最佳实践:

要利用 Infiniflow 的全部能力,应用需要被作为组合应用提供,而非一个单一运行时实体,不同组件(OSGi bundles)处理需求的不同部分。一个好的例子就是组合应用中包含密集型计算的部分可以被并行运行,这会减少整体处理时间。对于这种类型的应用,开发 者可以指定 Infiniflow 应该复制运行这个计算的 bundle,尽可能多的实例化拷贝以使最终结果尽可能的快。这可以被认为是网格运算,但是这种方 式不要求一个昂贵的专用“网格竖井”,而是把硬件共享给其它应用(应用也在 Infiniflow 控制之下,Infiniflow 可以自动地分配资源和管理 任何内容)。

Infiniflow 的主要特性:

  • 支持主流 OSGi 容器 —— 应用部署支持 Equinox、Felix 和 Knopflerfish OSGi 运行时容器。
  • 符合 SCA —— Infiniflow 实现了 SCA 规范 0.96,今年年中有望支持 1.0。
  • 开源基础 —— Infiniflow 建构在 Newton 之上,它的开源许可证协议是 GNU General Public License
  • 支持 Spring 动态模块 —— 因为 Spring 动态模块应用是 OSGi 兼容的,自然被 Infiniflow 支持。
  • 自动的伸缩性 —— Infiniflow 自动根据应用的 SCA 系统描述伸缩应用。
  • 自相似(Self-similar)架构 —— Infiniflow 自身构建就使用 OSGi,并且使用 SCA 连接到一起。
  • 基于 Eclipse 的工具 —— 一个基于 Eclipse 的插件可以部署和测试 Infiniflow 内部应用
  • 自动故障恢复 —— 如果一个资源失效,失效的组件将自动地由其它服务器上的重新供应。
  • 模型驱动架构 —— 为了减少操作复杂度,应用程序运行时只能通过它们的 SCA 系统描述符修改,与描述符的所有交互都是被保护和经过审计的。

InfoQ 要求 Rowney 更详细地解释 Infiniflow 处理应用伸缩性的方式:

一个 Infiniflow 服务结构(Service Fabric)由一组 Infiniflow 容器组成—— 启用 OSGi 的 JVM——它可以动态安装 / 启动 / 停止 / 卸载来自 SCA 系统描述符的 OSGi bundles。 基本的向外伸缩(Scale-Out)行为如下:

  • 服务结构(Service Fabric)接收一个系统描述符——它定义服务组件为构建‘系统’应该装配的方式,并定义它的‘目标状态’。每个服务组件有其自身的运行时需求和伸缩行为。
  • 基于所需要的伸缩性行为,Infiniflow 供应者(Provisioner)动态地与可用服务器 / 虚拟机协商,以确认潜在的可托管系统组件的候选者。
  • 同意托管一个服务组件的服务器接收来自供应者(Provisioner)的相关 SCA 片段,服务器同意在一个协商过的时间段(契约)内托管服务组件。
  • 每个服务器下载(拉)在片段中——来自仓库——指定的 OSGi bundles,并本地实例化这些服务。
  • 服务结构(Service Fabric)不断根据 SCA 文档监视运行时的个数,按照满足目标状态的需要伸缩和重新部署服务。

在 Infiniflow 服务结构(Service Fabric)架构的应用层,一个组合系统的向外伸缩行为是以下功能: - 被系统内分布式服务组件使用的 SCA 绑定。

  • 应用于每个组合服务的复制行为。
  • 关联的中间件,如果合适的话

这意味着有一组丰富的可配置的向外伸缩行为,包括 SEDA、Federated Space、Hadoop-based,对于消息,有分布式服务组件间的异步或同步通信模式,一组可能使用的协议包括:RMI、SOAP 或 TCP/Streaming。

Rowney 接着描绘了 Infiniflow 的未来计划:

  • 通过给 Infiniflow 服务结构(Service Fabric)加入更多的智能,增强 Infiniflow 自治行为。
  • 继续与中间件提供者集成。
  • 进一步与监视和审计框架集成。
  • 通过扩展性的向外伸缩和失败测试场景增强健壮性。
  • 通过开源工具的利用提高对开发者支持。
  • 和标准化团体合作,确保 Infiniflow 结构保持开放和灵活。

查看英文原文: Infiniflow: Next-Generation Distributed Application Server based on OSGi and SCA

2008-02-21 10:021230
用户头像

发布了 255 篇内容, 共 63.0 次阅读, 收获喜欢 10 次。

关注

评论

发布
暂无评论
发现更多内容

用纯 Python 打造的轻量级 Excel 到 Markdown 转换工具

申公豹

Python

WorkPlus企业即时通讯系统的领先者,提升沟通效率的利器

BeeWorks

利用开源框架BMF实现高效视频处理

Geek-yan

深入学习Python与Vscode环境的安装与配置

申公豹

Python

简洁灵活:Python中基于字段的不使用元类的ORM实现

申公豹

Python

cmake | AI工程化部署

AIWeker

c AI AI工程化部署

基于Vue.js和Spring Boot的口罩自助售卖系统:设计、实现与技术深度解析

申公豹

开发

WorkPlus打造企业即时通讯平台,助力高效沟通与协作

BeeWorks

WorkPlus超级APP助力企业节省IT人力成本,实现快速移动化

BeeWorks

掌握进阶:高级功能、图表定制与地理数据绘制

申公豹

Python

嵌入式系统中的低功耗定时器应用与优化实战

申公豹

嵌入式

Python文件操作指南:读写、异常处理与上下文管理器详解

申公豹

Python

手把手教你Python圣诞主题绘图

申公豹

Python

记一次本地环境启动不了Mysql的故障

DoHornBurg

Java MySQL hyper-v

WorkPlus Meet实现企业局域网视频会议的领先解决方案

BeeWorks

鸿蒙 API 9工程转换为API 10工程

坚果

HarmonyOS OpenHarmony

Seaborn 数据可视化全攻略:从基础到高级实战

申公豹

Python

多表格文件单元格平均值计算实例解析

申公豹

Python

深入理解嵌入式系统中的GPIO控制与应用

申公豹

嵌入式

E3PO: 探索360°视频流传输的未来

不会算法。

移动UI交互设计与动效制作

坚果

设计 UI 坚果派

项目分享:AIGC技术在智能教学生成中的应用

YoLo

AI

个人技术成长方面的心得体会:边缘计算之旅

农夫三拳

在Python中实现条形图动态追赶动画效果

申公豹

Python

基于STM32的物联网节点设计与实现-传感器数据采集与无线通信

申公豹

嵌入式

WorkPlus十年铸剑,成就千万级用户信赖与认可

BeeWorks

WorkPlus一站式协同解决方案,助力企业降本增效

BeeWorks

Python从基础到进阶字符串验证

申公豹

Python

HarmonyOS的功能及场景应用

芯动大师

Python图像处理:批量添加水印的优雅实现与进阶技巧

申公豹

Python

构建高效、安全的在线考试系统:基于Spring Boot和Vue的前后端分离之道

申公豹

Infiniflow:基于OSGI和SCA的下一代分布式应用服务器_Java_Ryan Slobojan_InfoQ精选文章