SOFAArk is a light-weight,java based classloader isolation framework.
APACHE-2.0 License
SOFAArk https://github.com/koupleless/koupleless
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
;
Ark
Ark Executed Fat Jar
Maven
sofa-ark-maven-plugin
Ark
java -jar application.jar
Ark Ark
Ark Container``Ark Plugin
Ark Biz
Ark Container
: Ark Ark Plugin
Ark Biz
Ark classpath Ark Plugin
Ark Biz
Ark Plugin
: Ark Fat Jar
Maven
sofa-ark-plugin-maven-plugin
Java Jar
Ark Plugin
Ark Plugin
Ark PluginClassLoader
Ark Biz
: Ark Fat Jar
Maven
sofa-ark-maven-plugin
Ark-Biz
Ark Container
classpath Ark Plugin
Ark Biz
ClassLoader Ark Plugin
Ark Biz
Ark Plugin
Ark Plugin
Ark Biz
Ark Biz
Ark Plugin
SOFAArk SOFAArk A B A 0.1 C B 0.2 C C :
SOFAArk A 0.1 C Ark Plugin
SOFAArk
SOFAArk Biz Ark Biz BizClassLoader SofaService/SofaReference
JVM
API Zookeeper
master app, Ark Biz Biz Ark Biz Biz SOFAArk API API, SOFAArk Config Plugin ZookeeperConfig Plugin
Serverless SOFAArk Koupleless
SOFAArk
Serverless Java
Koupleless 1.0 Koupleless
SOFAArk OSGi CloudEngine Spring Boot PandoraBoot