A5下载 - 努力做内容最丰富最安全的下载站!

A5站长下载站

当前位置:A5下载 > JS特效 > JS常用代码 > 其它代码 > SOFAArk Project v3.1.3
SOFAArk Project

SOFAArk Project

v3.1.3
  • 软件大小:84.1 MB
  • 软件语言:简体中文
  • 更新时间:2024-05-10
  • 软件类型:源码程序 / 其它代码
  • 运行环境:WinXP, Win7, Win8, Win10, WinAll
  • 软件授权:免费软件
  • 官方主页:https://down.chinaz.com/soft/51399.htm
  • 软件等级 :
立即高速安全下载
  • 介绍说明
  • 下载地址
  • 精品推荐
  • 相关软件
  • 网友评论
SOFAArk 是一款基于 Java 实现的动态热部署和轻量级类隔离框架,由蚂蚁集团开源贡献,主要提供应用模块的动态热部署和类隔离能力。基于 Fat Jar 技术,可以将多个应用模块打包成一个自包含可运行的 Fat Jar,应用既可以是简单的单模块 Java 应用也可以是 SpringBoot/SOFABoot 应用。

 

背景

SOFAArk 最初的场景是解决 Java 开发常常会遇到的包依赖冲突的问题,尤其当工程应用变得臃肿庞大,包冲突的问题也会变得更加棘手,导致各种各样的报错,例如LinkageError, NoSuchMethodError等。实际开发中,可以采用多种方法来解决包冲突问题,比较常见的是类似 SpringBoot 的做法,统一管理应用所有依赖包的版本,保证这些三方包不存在依赖冲突。这种做法只能有效避免包冲突的问题,不能根本上解决包冲突的问题。如果某个应用的确需要在运行时使用两个相互冲突的包,例如 protobuf2 和 protobuf3,那么类似 SpringBoot 的做法依然解决不了问题。

为了彻底解决包冲突的问题,我们需要借助类隔离机制,使用不同的 ClassLoader 加载不同版本的三方依赖,进而隔离包冲突问题。OSGI 作为业内最出名的类隔离框架,自然是可以被用于解决上述包冲突问题,但是 OSGI 框架太过臃肿,功能繁杂。为了解决包冲突问题,引入 OSGI 框架,有牛刀杀鸡之嫌,反而使工程变得更加复杂,不利于开发。

SOFAArk 则采用较为轻量级的类隔离方案来解决日常经常遇到的包冲突问题,在蚂蚁金服内部服务于整个 SOFABoot 技术体系,弥补 SpringBoot 没有的类隔离能力。实际上,SOFAArk 是一个通用的轻量级类隔离框架,并不限于 SpringBoot 应用,也可以和其他的 Java 开发框架集成。

基于类隔离能力 SOFAArk 还提供了动态热部署能力。SOFAArk 不但支持将多个应用合并打成一个可执行的 Fat Jar 包,也支持运行时通过 API 或者 Zookeeper 动态推送配置达到动态部署应用模块的能力。在多团队协作开发时,各个功能模块由不同的团队负责开发,通常情况下,这些功能模块独立开发,但是运行时部署在一起。借助 SOFAArk 提供的合并部署能力,各团队开发时拥有相当大自由度,只需要定义各模块之间的交互接口即可,尤其对于中台应用开发,提高团队合作效率。除了合并部署,SOFAArk 还对接了 Zookeeper 接受动态配置,控制应用模块的动态安装和卸载。

 

原理

SOFAArk 框架包含有三个概念,Ark Container, Ark Plugin 和 Ark Biz; 运行时逻辑结构图如下:

SOFAArk Project

下载地址

  • PC版

SOFAArk Project v3.1.3 版

相关软件

查看所有评论+

网友评论

网友
您的评论需要经过审核才能显示

本类排名

本类推荐

装机必备

换一批

相关资讯

公众号