正在阅读:构建高性能J2EE应用的10个技巧构建高性能J2EE应用的10个技巧

2004-12-27 15:13 出处: 作者:godttj 责任编辑:linjixiong


  J2EE应用经常要以只读方式访问大量长时间不变的数据,而不是访问单个实体,例如浏览在线产品目录。在这种只读情况下,使用实体EJB访问数据会导致严重过载并且实现很麻烦。实体EJB 适合于对单个实体的粗粒度访问,访问大量的列表只读数据时效率不高。不管是使用CMP还是BMP,一定需要编写代码操作多个实体EJB及其关联。这将导致访问多个数据库并存在大量的也是不必要的事务开销。

  利用Java Messaging Servce(消息服务)

  J2EE规范在JMS中提供了内置的异步处理服务。当涉及到系统需求时,应该了解在什么情况下应该采用JMS进行异步处理的设计。一旦确定要执行一些异步处理,那么同步处理的任务就应该越少越好,将数据库密集的操作安排在稍后的异步处理中完成。

  缓存JNDI Lookup查找

  很多操作在进行JNDI查找时要消耗大量资源。通常应该缓存JNDI资源避免网络调用和某些处理的过载。可以缓存的JNDI查找包括:


  EJB Home Interfaces
  Data Sources
  JMS Connection Factories
  MS Destinations/Topics

  一些JNDI包实现了缓存功能。但是调用对EJB主接口的narrow方法时,这种功能作用有限。

  缓存查找的设计应该使用共享的IntialContext实例,尽管构建它很麻烦。这是因为需要访问多种数据源,包括应用资源文件JNDI.properties,系统属性的各项参数,传入到构造函数的各项参数。

热点推荐:
 强!Java实现MSN Messenger聊天 C++程序员容易犯的10个C#错误
 精彩:ASP遗留的二十大积习 软件开发入门学习的个人看法
 Java编程学习:自己DIY一个JSP日历 设计模式的有趣解释-追MM
 网页编程必看:XML文法分析 Windows管理员六大必备下载


察看评论详细内容 我要发表评论
作者笔名简短内容 发表时间
:
键盘也能翻页,试试“← →”键

相关文章

关注我们

最新资讯离线随时看 聊天吐槽赢奖品