OSChina 第41期高手问答:JBoss 应用服务器

红薯 发布于 2013/09/01 07:39
阅读 8K+
收藏 39

近年来,在J2EE应用服务器领域,JBoss是发展最为迅速的应用服务器。从JBoss项目开始至今,它已经从一个EJB容器发展成为一个基于的 J2EE的Web 操作系统(operating system for web),它体现了J2EE规范中最新的技术,并且它还在The Java World Editors' Choice 2002评选中获得“最佳Java应用服务器”大奖。无论是学习还是应用,JBoss为我们提供了一个非常优秀的平台。

OSCHINA 本期高手问答(9月2日-9月6日)我们请来了@L-Thomas 为大家解答关于 JBoss AS 方面的问题。

@L-Thomas (李贤棣) 从业多年,一直在研究和实践基于开源的企业和互联网信息化解决方案。设计与实现的方案均部署在JBoss应用服务器上运行,对JBoss应用服务器的安装、部署、优化、升级、培训等有相当丰富的经验。曾在2012年JBoss用户与开发者大会上发表关于JBoss AS 7的演讲。

OSChina 高手问答一贯的风格,不欢迎任何与主题无关的讨论和喷子。

下面欢迎大家就 JBoss AS 方面的问题向 @L-Thomas 提问,请直接回帖提问。
加载中
0
光石头
光石头
我一直是扩展tomcat实现session共享,jboss支持session共享吗?怎么实现?
光石头
光石头
回复 @youpengfei : 我是自己扩展tomcat实现的,tomcat默认不支持session共享
L-Thomas
L-Thomas
JBoss支持Session共享,以HTTP Session为例,JBoss使用JBossCache作为实现,支持SESSION/ATTRIBUTE/FIELD三种复制粒度。实现JBoss HTTP Session共享的简单方法:1使用all配置启动JBoss;2设置web为distributable;3配置一个HTTP负载均衡器(如Apache)。即可实现JBoss集群及Session共享
youpengfei
youpengfei
jboss比tomcat先实现的吧。jboss比tomcat集群更加稳定
0
Dead_knight
Dead_knight
@L-Thomas :jboss as 7有了domain的概念,那么as 7在部署集群时,与之前的版本有什么区别?
L-Thomas
L-Thomas
Domain是一个管理单元,是把机器以域的方式管理起来,例如在域的的机器,可以做到统一更新和统一管理。它不是集群的一种方式,JBoss的集群部署配置不变。
0
sofn
sofn
@L-Thomas : 现在大部分项目都不会用EJB这样的重量级框架,在这种情况下,Jboss相比Tomcat、Jetty等轻量级服务器有哪些优势?
L-Thomas
L-Thomas
JBoss的web部分叫JBossWeb,它基于tomcat的内核的,并做了优化(如Jboss Web Native),比普通tomcat服务器的性能和稳定性都要稍为好一些。与Jetty相比,不能绝对地说谁会更优秀,要看应用场景,就从各自的特点来说,Jetty比较适合分布式环境的需求(如云计算),而JBoss Web更符合企业级环境。
0
原来如此
原来如此
@L-Thomas :一直侧重于编写代码,但是对应用服务器比较薄弱,能举例一些实际场景,什么时间使用tomcat和jboss吗?
youpengfei
youpengfei
回复 @钟斌 : 对的。tomcat是个简单的容器。而jboss是个复杂的应用集成
钟斌
钟斌
jboss是J2EE容器,tomcat是servlet容器,实现的规范不同,如果你要用到的功能,如果你要内置的JPA,JMS,JavaMail等J2EE规范的服务,就要用J2EE容器,如果只用到servlet,jsp等,只需要用到servlet容器,另外,J2EE规范包含Servlet规范,就是说J2EE容器包含Servlet容器。
0
阿门
阿门

@L-Thomas :Jboss EAP,Jboss,WildFly有什么区别?

L-Thomas
L-Thomas
通常所说的JBoss是指社区版的JBoss AS,而JBossEAP是指JBoss的企业版,它是JBoss社区版的强化,包括一系列的性能、稳定性、可靠性测试及软硬件兼容性测试,更适合于企业级应用场景。WildFly是红帽公司给社区办的JBossAS起的新名字,目的是为了避免与企业版相冲突。
0
yale8848
yale8848
@L-Thomas :请问Jboss是怎样支持集群的?
L-Thomas
L-Thomas
集群机器见的通信通过JGroup来实现支持,Session复制通过JBossCache来实现支持。
0
首席打酱油
首席打酱油
@L-Thomas :新手求问目前网上有没有好的JBOSS  入门资料
L-Thomas
L-Thomas
介绍你一个学习JBoss的好地方:http://www.jbosschina.org/
0
金大胖
金大胖
@L-Thomas :如果不使用ejb单从普通javaee来说,jboss比tomcat、jetty性能高吗?
L-Thomas
L-Thomas
JBoss Web基于tomcat的内核的,并做了优化,比普通tomcat服务器的性能和稳定性都要稍为好一些。而Jetty跟tomcat相比,不能绝对地说谁的性能会好点,要看应用场景,就从各自的特点来说,Jetty比较适合分布式环境的需求(如云计算),而Tomcat更符合企业级环境。
0
震秦
震秦
@L-Thomas : 个人在上学毕业的时候就买了一本<<JBoss In Action实战>>, 看了之后觉得配置复杂, 如果不是EJB的似乎也没必要使用这么重的东西. 况且早起JBoss 在EE服务器还集成Tomcat的.由此可见他似乎也不能为Web提高性能什么的. 同问:  Tomcat、Jetty等轻量级服务器有哪些优势?适合哪些场景?
L-Thomas
L-Thomas
JBoss的web部分基于tomcat的内核的,并做了优化(如Jboss Web Native),比普通tomcat服务器的性能和稳定性都要稍为好一些。与Jetty相比,不能绝对地说谁会更优秀,要看应用场景,就从各自的特点来说,Jetty比较适合分布式环境的需求(如云计算),而JBoss Web更符合企业级环境。
0
黑夜的猛章
黑夜的猛章
@L-Thomas : 有两个问题想请教:
1,jboss是否能实现跨jvm的ejb调用时一些隐式的参数传递?(类似单jvm时ThreadLocal那样的效果)或者说是否支持自定义数据序列化?

2,jboss 7是否能实现跨jvm的ejb调用的事务?jboss 5中的实现好像不太稳定。

谢谢!

L-Thomas
L-Thomas
可以支持,其实这种方式间接使用了分布式事务,这个需要数据库与数据库驱动的支持,我们一般不建议这样去用,因为分布式事务会影响性能。如果是不同jboss实例间的方法调用,除非是在集群环境,否则应该改为使用webservice更为妥当。
返回顶部
顶部