正 文

基于JMX通知框架的AJAX深度开发


www.7dspace.com  更新日期:2005-12-27 7:28:33  七度空间


  十一、容量建模

  支持AJAX的丰富的客户端不必再如以前那样频繁地提交请求。但是随着XMLHttpRequest异步地执行在浏览器端,向服务器发出的HTTP请求的数目也会相应于重试间隔而有所增加。

  ·再试间隔(思考时间)=20秒

  ·连接的用户数=5000

  ·事务每秒(TPS)=5000/20=250

  我们期望一个由HTTP用户基所产生的额外的每秒能够实现250次的请求(事务)。

  当然,这依赖于在服务器上的这些请求所完成的任务来提高响应时间上的潜力。在我们的实例中,每个请求必须查找MBean属性并且格式化一个XML响应,但是该响应很小而且MBean处理是在本地内存中。由于每个Web服务器线程每秒能够处理大约200个GET请求,以及用户横跨一个大约运行着200个线程的J2EE服务器来请求平衡加载,所以增加的加载并不太重要。

  还应注意,当建模AJAX架构时,增加的加载数可能随着带宽的减少而有所偏移。

  十二、安全性

  假定你只要求WebUser组中的用户能够存取该admin servlet,情况会怎样呢?

  如果仅是被认证的用户才能存取admin servlet,那么XMLHttpRequest将以该用户身份运行-如果该用户已经认证。

  例如,一旦用户Joe登录进这个应用程序,并且Joe是一个WebUser组的成员,那么XMLHttpRequest将能激活admin servlet。

  把下列代码添加到admin servlet将会确认被认证的主题,并分别返回true和Joe:

request.isUserInRole("WebUser");
request.getRemoteUser();

  十三、缓冲

  一些用户已经发现IE会缓冲来自AJAX请求的响应;这可能是由于浏览器/页面设置,但是一个强制性的解决办法是为该URL加上时间印戳:

var urlstr = "./admin?reqId=0&ts=" + new Date().getTimeStamp();

  十四、用不用XML?

  一些AJAX设计者欣然弃用XML而发送以普通文本形式的响应:

response.setContentType("text/plain");

  这明显要依赖于你的客户端需求和客户与所需求的数据之间的耦合程度。一个简单的文本响应对于一个文本警告就足够了;然而,本文中XML模型的优点在于,响应数据可以被进一步详细描述从而提炼状态和状态相关的数据。本文向你展示了怎样分析一更复杂的响应-客户可能必须编码以进行接收之。

  十五、 结论

  AJAX代表了一些新型的架构机会,然而它们不应该被丰富的客户端功能所遮蔽。本文在衡量了AJAX所提供的优点的同时,也强调了其对于容量和安全方面的技术要求-这是使用这种新型技术所必须要求的。

7页,页码:[1] [2] [3] [4] [5] [6] [7] 

上一篇:使用AJAX技术开发新一代Web应用程序
下一篇:Spring Framework中的AOP编程之入门篇
作者:朱先忠编译  来源:天极网 ( 责任编辑:7dspace )
收藏此页】【打印】【关闭
站 内 搜 索
 

热 点 导 读
特 别 推 荐