前言
小编最近加入了公司的JavaEE团队,在做一些JavaEE相关的项目,在项目中用的是JBoss EAP服务器,由于是接触JavaEE项目的时间不长,所以对于JBoss EAP来说,自己只处于基本的会用的阶段。最近项目不是很紧,抽空研究一下Jboss EAP,下面和大家一起从宏观上了解一下。
叙述
什么是JBoss EAP
在项目中,我们用的是jboss-eap-7.1,版本是最新的Jboss EAP版本,看一下到底什么是Jboss EAP?
Jboss EAP的全称是JBoss Enterprise Application Platform,中文名称是JBoss企业应用程序平台。
Jboss EAP 7提供了创新的模块化云就绪架构,强大的管理和自动化以及世界级的开发人员生产力。它通过Java EE 7认证,具有强大的企业级功能,如高可用性群集,分布式缓存,消息传递,事务处理和完整的Web服务堆栈。它为任何环境中的Java EE提供全面支持和部署灵活性,无论是内部部署,虚拟还是混合云环境。支持包括Spring,Spring Web Flow,Spring WS,Spring Security,Arquillian,AngularJS,jQuery,jQuery Mobile和Google Web Toolkit(GWT)等许多流行的Java EE 7基于Web的框架。JBoss EAP使组织能够更快,更灵活地交付业务价值,从而降低成本,直接向外扩展,并降低IT复杂性。所有的redhat在市场领先的认证和支持声誉,确保您的管理和发展需求得到满足,因为你继续推动未来和未来。
JBoss-EAP-7.1是一个建立在开放标准上并且符合Java企业版7规范的中间件平台。
JBoss EAP 的主要版本是从 WildFly 社区项目分支而来,分支时该社区项目已达到理想的功能完整度。在分支后又经过了长期的测试和产品化,JBoss EAP 在此期间内达到稳定、通过认证并得到增强,从而可供生产性使用。在 JBoss EAP 主要版本的生命周期内,可能会从该社区项目中拣选出一些选定的功能,并向后移植到同一主要版本体系中的一系列功能增强次要版本中。例如,JBoss EAP 7.1 就是从 WildFly 11 的一个工作分支中分出。
JBoss EAP 提供了预配置的功能选项,比如,高可用性集群、消息和分布式缓存。它还支持用户使用 JBoss EAP 提供的各种 API 与服务来编写、部署和运行应用程序。
JBoss EAP 采用模块化结构,服务仅在需要时才会启用,从而提高了启动速度。基于 web 的管理控制台和管理命令行界面 (CLI) 不需要编辑 XML 配置文件,而且增加了编写脚本并自动执行任务的功能。此外,JBoss EAP 还包括用于快速开发安全、可扩展 Java EE 应用程序的 API 和开发框架。
##目录结构
顶级目录和文件
目录 | 功能 |
---|---|
appclient/ | 包含应用程序客户容器的配置细节。 |
bin/ | 包含 Red Hat 企业版 Linux 和微软 Windows 上 JBoss EAP 的启动脚本。 |
docs/ | 许可证文件、schema 和示例。 |
domain/ | 配置文件、部署内容和 JBoss EAP 6 以受管域运行时使用的可写入区域。 |
modules/ | 当有服务请求时 JBoss EAP 6 动态加载的模块。 |
standalone/ | 配置文件、部署内容和 JBoss EAP 6 以独立服务器运行时使用的可写入区域。 |
welcome-content/ | 包含默认安装里 8080 端口上的 Welcome 应用程序使用的内容。 |
jboss-modules.jar | 加载模块的引导机制。 |
. domain/ 里的目录
名称 | 目的 |
---|---|
configuration/ | 用于受管域的配置文件。这些文件是通过管理控制台和 CLI 进行修改的,不能直接进行编辑。 |
data/ | 关于已部署服务的信息。服务是用管理控制台或管理 CLI,而不是通过部署扫描器来部署的。因此,请不要手动在这个目录里放入文件。 |
log/ | 包含运行在本地实例上的主机和进程控制器的运行时日志文件。 |
servers/ | 包含某个域里的每个服务器实例的 data/、log/ 和 tmp/ 目录,其中包含的数据和顶层的 domain/ |
tmp/ | 包含临时数据,如针对受管域检验本地用户的管理 CLI 使用的共享密钥机制相关的文件。 |
standalone/ 里的目录
名称 | 目的 |
---|---|
configuration/ | 用于独立服务器的配置文件。这些文件是通过管理控制台和 CLI 进行修改的,不能直接进行编辑。 |
deployments/ | 关于已部署服务的信息。独立服务器包含一个部署扫描器,您可以在这个目录里放入要部署的归档文件。然而,我们推荐的方法是用管理控制台或管理 CLI 来管理部署。 |
lib/ | 附属于独立服务器模式的外部库。默认为空。 |
tmp/ | 包含临时数据,如针对服务器检验本地用户的管理 CLI 使用的共享密钥机制相关的文件。 |
##功能
JBoss EAP 的功能
功能 | 描述 |
---|---|
符合 Java EE 7 规范 | 通过 Java Enterprise Edition 7 full 和 web profile 认证。 |
受管域 | 集中管理多个服务器实例和物理主机,而独立服务器只允许运行单个服务器实例。可以按服务器组来管理配置、部署、套接字绑定、模块、扩展和系统属性。集中并简化应用程序安全性(包括安全域)管理。 |
管理控制台和管理 CLI | 新的域或独立服务器管理界面。管理 CLI 还包括批处理模式,可以编写脚本并自动执行管理任务。不建议直接编辑 JBoss EAP XML 配置文件。 |
简化的目录结构 | 模块目录包含所有应用服务器模块。域和独立目录分别包含用于域和独立部署的构件与配置文件。 |
模块化类加载机制 | 模块可以按需加载和卸载。这样可提高性能、实现更好的安全性并缩短启动和重启时间。 |
简化数据源管理 | 数据库驱动程序可像其他服务一样进行部署。另外,可以使用管理控制台和管理 CLI 来创建和管理数据源。 |
2.2. 子系统
许多对部署到 JBoss EAP 的应用程序开放的 API 和功能组成子系统。管理员可根据应用程序的目标,配置这些子系统来提供不同的特性。例如,如果应用程序需要数据库,则可在 datasources 子系统中配置数据源,在应用程序部署到 JBoss EAP 服务器或域之后,就可以访问该数据源。
2.3. 高可用性
JBoss EAP 中的高可用性 (HA) 是指多个 JBoss EAP 实例一起协同运行,使应用程序能更好地抵抗流量、服务器负载和服务器故障等方面的波动。HA 结合了可扩展性、负载均衡和容错性等概念。
2.4. 操作模式
除了向应用程序提供相关功能和 API 之外,JBoss EAP 还具备强大的管理功能。JBoss EAP 采用不同的操作模式启动,可以分别提供不同的管理功能。JBoss EAP 提供独立服务器操作模式用于管理分散的实例,提供受管域操作模式用于从单个控制点管理一组实例。
小结
JBoss-EAP是一个很强大的知识体系,自身所包含的内容很多,所以在学习的时候一定要先宏观了解,然后再逐个技术点的攻破。
感谢您的阅读~~