通过 T3 协议使用 WebLogic RMI

以下部分提供有关通过 T3 协议使用 WebLogic RMI的信息。



 


 

WebLogic Server 中的 RMI 通信

WebLogic Server 中的 RMI 通信使用 T3 协议在 WebLogic Server 和其他 Java 程序(包括客户端及其他 WebLogic Server 实例)间传输数据。服务器实例将跟踪所连接的每个 Java 虚拟机(Java Virtual Machine,简称 JVM),并创建单个 T3 连接以承担 JVM 的所有流量。请参阅“管理控制台联机帮助”中的配置 T3 协议

例如,如果 Java 客户端访问 WebLogic Server 上的企业 Bean 和 JDBC 连接缓冲池,那么 WebLogic Server JVM 和客户端 JVM 之间就会建立起单个网络连接。因为 T3 协议能在单个连接上隐性地多路复用数据包,所以可以编写 EJB 和 JDBC 服务,就好像这些服务单独使用了专用网络连接。

 


 

确定连接的可用性

具有有效 T3 连接的任意两个 Java 程序(例如两个服务器实例,或者一个服务器实例和一个 Java 客户端)都使用定期的点对点“心跳”来通知和确定连续可用性。每个端点定期向对等方发布“心跳”,同样也通过连续接收对等方的心跳,确定对等方是否仍然可用。


  • 服务器实例的心跳发布频率由心跳间隔确定,默认情况下,心跳间隔是 60 秒。
  • 在等候缺少的心跳次数达到一定数量后,服务器实例将认定对等方不可用。次数由心跳时间段确定,默认次数为 4 次。因此,每个服务器实例最多等待 240 秒,或 4 分钟,若在此期间没有收到对等方的消息(心跳或其他通信),服务器实例将认定对等方不可用。
  • 建议您不要更改超时默认值。


 



T3也称为丰富套接字,是BEA内部协议,功能丰富,可扩展性好。T3是多工双向和异步协议,经过高度优化,只使用一个套接字和一条线程。借助这种方法,基于Java的客户端可以根据服务器方需求使用多种RMI对象,但仍使用一个套接字和一条线程。