写点什么

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:02948
用户头像

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

关注

评论

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

springboot文件上传下载实战 ——文件上传(1),想搞定大厂面试官

Java 程序员 后端

JVM启动参数学习笔记二

风翱

JVM 9月日更

springboot文件上传下载实战 —— 登录功能,「高并发秒杀

Java 程序员 后端

项目管理实践篇(二):技术型PM炼成记

后台技术汇

项目管理 管理 引航计划 内容合集 管理领域

SpringBoot之配置文件,Java开发教程入门

Java 程序员 后端

SpringBoot整合Redis,怎么实现发布-订阅?,一个回答引发热烈讨论

Java 程序员 后端

架构训练营模块三

yphust

云随想三 2B软件的机遇与挑战?

FLASH

云时代 2B软件

【LeetCode】最长递增子序列Java题解

Albert

算法 LeetCode 9月日更

springboot文件上传下载实战 ——文件上传,Java入门

Java 程序员 后端

架构实战营第八模块作业

子豪sirius

架构实战营

那段记忆中的声音:单式评书再现江湖背后的AI技术

脑极体

Opus从入门到精通(七)Opus编码基础之认识声音

轻口味

android 音视频 9月日更

HarmonyOS 鸿蒙登录页搭建及 Text 文本详解

阿策小和尚

HarmonyOS Android 小菜鸟 引航计划 9月日更

☕️【Java专题系列】「回顾 RateLimiter」针对于限流器的入门到精通(针对于源码分析介绍)

洛神灬殇

ratelimiter Guava 9月日更 限流器

网络攻防学习笔记 Day142

穿过生命散发芬芳

数据中心 9月日更

ES知识总结

十二万伏特皮卡丘

高峰应对记录

编号94530

Spring Boot 2 性能压测 测试发开 高峰应对

谈 C++17 里的 Observer 模式 - 3

hedzr

c++ 算法 设计模式 观察者模式 Design Patterns

MySQL 从入门到实践,万字详解!

前端下午茶

MySQL 数据库 大前端

架构师训练营 2 期模块三作业

kazeMace

架构实战营

SpringBoot2---指标监控,Java架构师之路

Java 程序员 后端

模块八作业

秀聪

架构实战营

产品分析:解决什么问题?

石云升

产品经理 9月日更

架构实战营模块三

WolvesLeader

「架构实战营」

Python 千猫图,简单技术满足你的收集控

梦想橡皮擦

9月日更

JavaScript进阶(五)节流

Augus

JavaScript 9月日更

SpringBoot-自动配置-源码解析,做了5年Java

Java 程序员 后端

Linux常用命令

在即

9月日更

这些 JS 中强大的操作符,总有几个你没听说过

前端下午茶

JavaScript 代码设计 代码技巧 基础知识

0x00 Go参考

Uasen_

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