注册本站  论坛  繁體中文

电脑技巧
手机 | MP3 | MP4 | 显卡 | 主板 | 显示器 | 光存储 | 笔记本 | 网络设备 | 移动存储 | 数码相机
键鼠 | CPU | 音箱 | GPS | 电视 | 服务器 | 投影机 | 机箱电源 | 品牌电脑 | 办公打印 |
| 网站首页 | Cisco | Windows | Linux | Java | Dotnet | Oracle | 网页设计 | 平面设计 | 安全 | 软件应用 | 电脑维修 | 办公维修 |
您现在的位置: 电脑技巧 >> Java >> 新手入门 >> 安装配置 >> Java正文

POJO开发模型的最后一块拼图

文章来源:中国IT实验室收集整理 作者:佚名 更新时间:2008-6-28 20:09:46 【 】 【加入收藏

    通过将POJO对象在群集内下的共享,让POJO不再局限于SNA(Share Nothing Architect)的架构,比较透明的支持了集群模式,可谓POJO开发模型的最后一块拼图。

    其实它的原理很简单,本身是一个中央式的Cache服务器。在应用启动命令中添加Terracotta参数,Classloader就会根据配置文件在JVM级以AOP方式修改ByteCode,用户透明地将对象存储于中央服务器。

    为了性能,它以对象属性而不是整个对象为存储单位;为了可用性,它本身也支持主备集群。

    Sessions Configurator .以Debug模式将tc-confg.xml运行在一个预配置的双机集群下,让你观察共享对象的数值变化,出现运行时错误时,提示配置文件缺漏错误的修正。

    Eclipse插件。通过对着任意的类、属性、函数点右键来设定tc-config.xml.说是用户透明,其实只是最美好的愿望,可能还是有些代码修改:

    同步问题。原本单机运行的程序,改成集群运行,跑不掉的是先要将自己共享对象类的代码改为线程安全的,如使用线程安全的ConcurrentHashMap 、AtomicInteger属性,或在访问属性的代码中加入synchronized控制。然后在xml中配置Terracotta的autolock将锁其扩展到群集范围,设定以锁为边界的批量更新属性的事务。

    反向理解TC的CTO同志关于调优的讲话,锁没搞好的话对性能影响挺大。

    本地资源属性。有些很local的属性如文件句柄是没办法共享的,这时候就需要配置为Transients 属性。这种属性在另一个JVM里就会被强制设为Null.怎么办呢?推荐的做法是另写一个初始化这些属性的init函数,在tc-config.xml中配置调用。更少侵入的做法是直接在tc-config.xml中写beanshell脚本,不过这脚本不好写。

    最后TC承担了实现POJO集群的功能,但TC Server本身就存在单点故障的危险,需要配成Cluster模式。在TC的Persistent HA Cluster模式中,所有数据会Persist到磁盘,Cluster中永远只有一个Active Node,其他节点就作为Passive Nodee.Active Node的失效切换与Client的重连都是透明的。 Passive 与Active Node使可以用同一块支持文件锁的磁盘空间,也可以让Active Node将所有变化通过网络同步到Passive Node上。一般采用后者。

    另外,已经可以买国内的技术支持服务了。唯一遗憾要到12月份的TC2.7版,才会支持Glassfish 2.

 

  • 上一篇Java:

  • 下一篇Java:
  • 最 新 热 门
     手机开发平台指南、教程和资料介绍
     关于什么叫面向接口编程
     编写高级JavaScript应用代码
     不要验证,直接转化科学计数法
     Eclipse插件开发中实现刷新和重编译介绍
     Java开源技术:Eclipse的使用技巧详解
     配置eclipse 3.2 使用JDK1.5中文JavaAPI
     集成Windows本地应用到Eclipse RCP 程序中
     hibernate.cfg.xml配置文件的说明
     eclipse开发jface时,main.class解决方法
    最 新 推 荐
     Tomcat 5常用优化和配置
     JBoss配置mySQL数据源
     如何在Android模拟器上安装和卸载APK包
     连接到localhost后提示要求用户名和密码
     如何配置一个最简单的svn服务器
     Tomcat6.0的配置问题
     在 Tomcat 上配置虚拟主机
     更新XP后,JAVA获取时间出错的解决办法
     Spring Bean的配置问题
     Java中使用遍历文件夹的2种方法
    相 关 文 章

    深入liferay portal核心之一 portlet扩展分…
    Heritrix的多线程ToeThread和ToePool
    struts2的action中获得request response se…
    Java 发Post请求实例程序代码
    使用JasperReport与iBATIS开发Web报表
    POJO应用框架:Spring Vs. EJB 3.0
    Web App用Quartz实现java schedule job
    OJB中的多条件查询
    OJB中的多表查询和更新
    你好,JOGL - Java与OpenGl的绑定

    | 设为首页 | 加入收藏 | 联系站长 | 友情链接 | 版权申明 | 网站公告

     

    Copyright 2006-2008 pcjx.com All Rights Reserved
    电脑技巧 版权所有 粤ICP备06059145号 地图
    本网站所有内容未经许可不得转载或做其他使用