站长百科 | 数字化技能提升教程 数字化时代生存宝典
首页
数字化百科
电子书
建站程序
开发
服务器
办公软件
开发教程
服务器教程
软件使用教程
运营教程
热门电子书
WordPress教程
宝塔面板教程
CSS教程
Shopify教程
导航
程序频道
推广频道
网赚频道
人物频道
网站程序
网页制作
云计算
服务器
CMS
论坛
网店
虚拟主机
cPanel
网址导航
WIKI使用导航
WIKI首页
最新资讯
网站程序
站长人物
页面分类
使用帮助
编辑测试
创建条目
网站地图
站长百科导航
站长百科
主机侦探
IDCtalk云说
跨境电商导航
WordPress啦
站长专题
网站推广
网站程序
网站赚钱
虚拟主机
cPanel
网址导航专题
云计算
微博营销
虚拟主机管理系统
开放平台
WIKI程序与应用
美国十大主机
编辑“
JBoss
”
人物百科
|
营销百科
|
网赚百科
|
站长工具
|
网站程序
|
域名主机
|
互联网公司
|
分类索引
跳转至:
导航
、
搜索
警告:
您没有登录。如果您做出任意编辑,您的IP地址将会公开可见。如果您
登录
或
创建
一个账户,您的编辑将归属于您的用户名,且将享受其他好处。
反垃圾检查。
不要
加入这个!
'''JBoss'''是一套[[应用程序]][[服务器]],属于[[开源]]的企业级[[Java]]中间件软件,用于实现基于SOA架构的[[web]]应用和服务。它包含一组可独立运行的[[软件]]。 JBoss是全世界开发者共同努力的成果,可以在任何商业应用中免费使用它,而不用支付费用。[[2006年]],Jboss公司被[[Redhat]]公司收购。JBoss是一个管理[[EJB]]的容器和服务器,支持EJB 1.1、EJB 2.0和EJB3.0的规范。但JBoss核心服务不包括支持[[servlet]]/[[JSP]]的WEB容器,一般与[[Tomcat]]或[[Jetty]]绑定使用。 ==优点== *JBoss是免费的,[[开放源代码]][[J2EE]]的实现,通过LGPL许可证进行发布。 *JBoss需要的[[内存]]和[[硬盘]]空间比较小。 *安装便捷:解压后,只需配置一些[[环境变量]]即可。 *JBoss支持"热部署",部署BEAN时,只拷贝BEAN的JAR文件到部署路径下即可自动加载它;如果有改动,也会自动更新。 *JBoss与Web服务器在同一个[[Java虚拟机]]中运行JBoss运行后后台管理界面,Servlet调用EJB不经过[[网络]],从而大大提高运行效率,提升安全性能。 *用户可以直接实施J2EE-EAR,而不是以前分别实施EJB-JAR和Web-WAR,非常方便。 *Jboss支持集群。 ==使用技巧== ===Jboss的目录结构=== *bin:开始和停止JBoss的地方。 其中有两个主要的批处理文件:run.bat和shutdown.bat。要启动JBoss只要执行run.bat文件即可;要停止JBoss必须执行带参数的shutdown.bat。 注意,shutdown.bat文件直接执行并不会自动停止JBoss,它必须要输入参数,参数意义如下: # -h 显示帮助信息; # -D 设置系统属性; # -- 停止处理选项; # -s 停止用JNDI [[URL]]指定的远程服务; # -n 通过制定JMX名字来停止服务; # -a 适配到指定的JNDI名称的远程服务; # -u 指定用户名称; # -p 指定用户密码; # -S 停止服务器; # -e 从虚拟机退出; # -H 暂停(挂起)。 一般,我们使用-S选项来停止服务器。即执行shutdown.bat -S。 *docs:放置JBoss的例子、测试脚本和各种[[脚本]]配置文件的DTD。 *lib:放置JBoss所需要的部分jar包文件。 *client:放置EJB客户端运行时所需要的jar包。 *server:放置各启动类型的服务器端EJB配置所需要的文件等。 *backup ===配置服务端口=== 修改文件: %JBOSS_HOME%\server\default\deploy\jbossweb-tomcat41.sar\META-INF\jboss-service.xml 在"8080"的配置后加入以下代码: <pre> <!-- A HTTP/1.1 Connector on port 80 --> <Connector className="org.apache.coyote.tomcat4.CoyoteConnector" port="80" minProcessors="5" maxProcessors="100" enableLookups="true" acceptCount="10" debug="0" connectionTimeout="20000" useURIValidationHack="false"/></pre> 重新启动JBoss即可 ===启动过程=== 设置环境变量 JBOSS_CLASSPATH (可以自己加上安全管理器和xml解析器) a) %JBOSS_CLASSPATH%; b) %JAVA_HOME%/lib/tools.jar; c) run.jar; d) ../lib/crimson.jar; 设置启动参数JAXP(xml解析器和相应工厂) 启动 设置配置信息 读取配置文件JBoss.properties,保存在系统属性中(System.properties) 设置缺省属性jboss.home和java.security.auth.login.config 创建MBeanServer.的实例: 把配置文件和补丁文件所在的目录指定给特定的远程类加载器Mlet 加载保存配置文件(mlet会自动在配置文件目录中查找) 初始化并启动MBean 配置服务ConfigurationService 加载配置文件 保存配置 服务控制ServiceControl 初始化服务程序(init方法) 启动服务程序(start方法) ===在JBOSS中发布文件=== *制作JSP的war部署文件: 用"jar cvf hello.war index.jsp main.jsp"的方式生成把index.jsp和main.jsp文件加入到hello.war中。把生成的hello.war拷贝到jboss安装目录\server\default\deploy\下,部署成功。用"http://localhost:8080/hello/"或"http://localhost:8080/hello/index.jsp"这两个地址进行测试。 *制作Servlet的war部署文件 #用[ javac -classpath "%CLASSPATH%;%jboss_home%\server\default\lib\javax.servlet.jar" HelloWorld.java ]的形式编译HelloWorld.java(这是一个Servlet)得到HelloWorld.class #写一个web.xml配置文件,代码如下: <pre> <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd"> <web-app> <servlet> <servlet-name>HelloWorld</servlet-name> <servlet-class>hello.HelloWorld</servlet-class> </servlet> <servlet-mapping> <servlet-name>HelloWorld</servlet-name> <url-pattern>/HelloWorld</url-pattern> </servlet-mapping> </web-app></pre> 每个标记(标签)必须小写,否则会出错。 #先在c:\servlet下建立一个web-inf目录,在目录中放入web.xml文件。 #在web-inf目录下建立一个classes目录,放入编译好的HelloWorld.class文件 #在c:\servlet下执行jar cvf hello.war *.*,很快就生成了一个名为hello.war的文件,接着把hello.war复制到jboss的安装目录\server\default\deploy\下完成部署。 *也可以不打包,把文件放在deploy下的同名文件夹下也可以。比如原来是制作成hello.war文件,可以建立一个名称为hello.war的文件夹,把要发布的文件拷贝到这个目录底下也可以发布成功。 ==JBoss的服务器架构概述== JBoss的构架和其他J2EE应用服务器的构架有着巨大的不同。JBoss的模块架构是建立在[[JMX]]底层上的,下图展现了JBoss主要组件和JMX的联系。 [[Image:Jboss 1.jpg]] ===JMX层次=== JMX是一个可复用框架,它为远程(Remote)和本地(Local)管理工具扩展了应用。它的架构是层式架构。他们是实现层(instrumentation layer)、代理层(agent layer)和发布层(distribution layer)。其中,发布层还在等待未来的标准化。简要的表述是,用户使用管理Bean,MBean来提供获得相应资源的实现方法。实现层实现相关的特性资源并将它发布于JMX相关应用中,它的代理层控制和发布相应的注册在MBeanServer代理上的管理资源。 [[Image:Jboss 2.jpg]] ===Boss主要模块=== 主要的JBoss模块是在MeanServer上的可管理MBean。 *JBoss EJB容器是JBoss服务器的核心实现。它有两个特性,第一是在运行期产生EJB 对象的Stub和Skeleton类,第二是支持热部署。 *JBossNS是JBoss命名服务用来定位对象和资源。它实现了JNDI J2EE规范. *JBossTX 是由JTA/JTS支持的交易管理控制. *部署服务支持EJB(jar)、Web应用文档(war)和企业级应用文档(ears)的部署。它会时刻关心J2EE应用的URL情况,一旦它们被改变或出现的时候将自动部署。 *JBossMQ使Java 消息规范(JMS)的实现。 *JBossSX支持基于JAAS的或不支持JAAS机制的安全实现。 *JBossCX实现了部分JCA的功能。JCA制订了J2EE应用组件如何访问基于连接的资源。 *Web服务器支持Web容器和Servlet引擎。JBoss 2.4.x版本支持Tomcat 4.0.1,Tomcat 3.23和Jetty 3.x服务. ==JBoss架构设计中的两个重要的特性== 第一是使用JMX作为一个软件总线垂直的贯穿其所有的服务,通过将新的服务组件遵循JMX规范挂接上"总线",使得系统扩展现有的服务变得容易。可插入式框架被广泛的运用于服务的实现。开发者可以选择他们需要的服务并编写他们所需要的相应实现,通过定义在部署描述文件中,让JBoss服务器知道。 第二是容器被设计成为动态代理机制,这样使容器的实现变得简单和使开发者避免费劲的将jar文件进行预编译以获得stub和skeleton代码。但是这样做潜在的问题是性能和可测性,因为我们知道java反射机制会引起性能的损失。 ==相关条目== *[[JVM]] *[[JRuby]] *[[VMware]] ==参考来源== *http://zh.wikipedia.org/zh-cn/JBoss *http://baike.baidu.com/view/309533.htm *http://www.hudong.com/wiki/JBoss [[category:J2EE|J]] [[category:服务器|J]] [[category:开放源代码|J]]
摘要:
请注意,您对站长百科的所有贡献都可能被其他贡献者编辑,修改或删除。如果您不希望您的文字被任意修改和再散布,请不要提交。
您同时也要向我们保证您所提交的内容是您自己所作,或得自一个不受版权保护或相似自由的来源(参阅
Wordpress-mediawiki:版权
的细节)。
未经许可,请勿提交受版权保护的作品!
取消
编辑帮助
(在新窗口中打开)