加入收藏
|
设为首页
|
会员中心
|
我要投稿
|
RSS
首页
阅读中心
下载中心
影视频道
网上商城
FLASH频道
图片频道
文章中心
分类信息
网站建设
您当前的位置:
首页
>
阅读中心
>
软件学习
J2EE到底是什么?
时间:2014-05-04 10:04:54 来源:不详 作者:佚名
J2EE到底是什么?
目前所有的B/S系统应
有状态是指在整个系统的
都是独立的连接,不需要在
用可以分为:有状态(statefull
处理过程中要保留记住一些信息
每个request之间共享数据等等
)和无状态(stateless)两大类别。
,而无状态则相反,每次request
。
对于这两种应用,通常
第一考虑是性能要最优,性能是
我们选择IT技术的主要依据之一。
为达到最大化的性能,
时的性能开销,也就是说系
从对象池中取出实例,用完
persistence)策略来保存
对于Java系统,以前通常的作法
统启动时,预先生成一定数目的
,归还对象池,对于有状态的应
状态。
是使用对象池,这样节约对象生成
对象实例在内存中,需要使用时,
用,可以使用相关持久化(
下一步,如何并行访问对象池将是非
线程的创建销毁也是可能非常耗时的,那
实现多线程并行计算的最优化。
常重要,java的多线程技术为我们提供了实现可能,
么,无疑象使用对象池一样,我们必须使用线程池来
使用线程池和对象池,每次客户端请
请求就将线程返回线程池,同样,使用线
就还回对象池。 整个这样的架构设计在
求发生一次就从线程池中借用一个线程,处理完这个
程快速的访问对象,对象也是从对象池中借用,用完
性能上是最优的。
有了性能保证,安全机
。
制、事务机制、集群(cluster)
技术也将是选择IT技术的主要依据
J2EE就是这样一个实现上述多种考量
有这些考量的要求并不都一样重视,比如
么,完整的J2EE技术也许就并不适合你。
的综合标准框架系统,在具体使用中,也许我们对所
:如果纯粹追求性能是第一,可以忽视事务机制,那
那么我们先看看J2EE是
J2EE中必然应该有上述线程
容器;EJB是基于对象池的
如何从性能上保证我们的应用系
池和对象池的实现技术,servle
更好的对象容器。
统以最快速度运行的,也就是说
t实际是基于线程池的更好的线程
看看Servler的架构图:
当client1发生请求时s
ervlet容器会从线程池中分配一
个线程给这个request.
再看看EJB的架构图:
instance Pool作为一
,简单的说 EJB=对象池+远
个对象实例池,维持着EJB实例
程对象池
,当然这个对象池是用生命周期的
但是,EJB还整合了相当的其它增强
必需的,当然你还必须根据你的需要来选
有要求,直接使用线程池和对象池技术肯
功能,如安全 事务机制等,这些对于一般应用都是
择是否使用J2EE,如果你的应用对安全 事务机制没
定获得最好的性能。
所以,根据Servler和EJB的原理,我
,或什么需要放在EJB中实现:
们已经可以规划我们的应用,什么可以放在servlet
线程的本质决定了serv
数据源,使用JMS或JavaMai
注意这些用词都是"简单"的
let只适合一些轻量的应用,如
l处理简单的信息Message,或使
,一旦复杂了,就要使用EJB了
分析简单XML文档, 通过JDBC访问
用JTS/JTA处理简单的事务机制,
。
下面从客户端和服务器
指最终客户端,因为J2EE是
服务是供另外一个服务器上
端两个方面来具体考量这两个技
多层结构,中间层可能在多个服
的应用访问的,那么后者我们也
术的使用,这里的客户端不一定是
务器上实现,如果一个服务器上的
称为客户端。
根据应用的复杂程度和要求不同,分下列情况:
1.在WEB层可以实现的一些应用
如果你的系统没有很复杂的事务处理
javabean这样的一些Help性质的类来实现
有效efficient, 或最有扩展性的scalabl
,或访问很多企业原有的资源,那么可以借助
你的应用,但是,这样的方案不是最干净clean, 最
e。
否则,将所有核心计算放置入EJB中。
2.所有的复杂商务计算核心都在EJB中完成
如果你的客户端和服务
Http了(Web Service也是基
协议的,那么就需要通过se
器端之间有防火墙,那么目前能
于http就是这个道理),既然使
rvlet来访问EJB,这是我们最普
够无障碍通过防火墙的协议只有
用http了,而Servlet是基于Http
遍的应用情况。
但是,如果你的客户端
使用Servlet,直接使用Jav
有用于控制Jsp的页面的输
和服务器端可以放置在一个网络
a调用RMI来访问EJB,这样性能
出了(MVC模式中的控制作用)。
内,之间没有防火墙,那么就不必
是最好的,这时的Servlet大概只
如果是非java客户端,可以通过CORBA组件来访问EJB。
3.如果你的应用对速度要求很高,要求非常快,对于事务处理等方面几乎无要求
直接使用J2SE,加上线程池和对象池
Jakarta.Apache.org有这两种技术的源码
技术,将会使你的java系统性能发挥极致。
,线程池可以从Servlet容器Tomcat的源码中发现。
来顶一下
返回首页
发表评论
共有
条评论
用户名:
密码:
验证码:
匿名发表
推荐资讯
后牧工业区厂房1500平
现实的童话公主艾米·
科比专为大场面而生
“最美清洁工”原是《
相关文章
无相关信息
栏目更新
栏目热门
站内搜索:
新闻
下载
图库
FLASH
电影
商品
文章
分类信息
高级搜索
网站首页
|
关于我们
|
服务条款
|
广告服务
|
联系我们
|
网站地图
|
免责声明
|
WAP
服务专员1
技术支持
SunC
Soft
© 2002-2013
SunC