OSGi(Karaf):
1、Apache Karaf是一个现代的、多态的容器。
Karaf可以独立用做一个容器,支持广泛的应用和技术,同样支持在嵌入式模式的“随处运行”。
轻量级、有效的、企业级预平台,这种灵活性使得Karaf是解决微服务、系统集成、大数据和更多的完美方案。
Apache Karaf也可以使用Apache Felix或者Eclipse Equinox OSGi框架,在框架顶端提供额外特点。
提供的特点列表:
(1)热部署hot deployment:在部署目录中简单地扔一个文件,Apache Karaf会检测文件类型病尝试部署它。
(2)complete console:Apache Karaf提供了一完整的类Unix的控制台,可以完全控制容器。
(3)Dynamic Configuration:提供了一系列命令集中管理自己的配置。所有配置文件都有集中在etc文件夹中。配置文件中任何修改都是可提醒并重载的。
(4)高级日志系统:支持所有流行的框架(slf4j、log4j等)。无论使用哪个日志框架,Apache Karaf都集中在一个文件中配置。
(5)Provisioning:提供了一系列大量可以安装应用(Maven repository,Http,文件等)的URL。同样提供以一种描述应用程序的方式的“Karaf Features”的概念。
(6)管理:是一个支持企业的容器,通过JMX(java管理扩展)提供了很多管理指示器和操作。
(7)远程:Apache Karaf嵌入了SSHd服务器,允许远程使用控制台。管理层也可以远程。
(8)安全:提供完整的安全框架(基于JAAS),提供控制台的RBAC(基于角色的访问控制)机制和JMX访问。
(9)实例:多实例可以直接从main 实例(root)管理。
(10)OSGi框架:不是对一个OSGi框架紧耦合的。默认的使用Apache Felix 框架运行,但是可以简单地连接到Equinox(只是配置文件中的一个属性)