Interceptors for Java']Java Remote Method Invocation

被引:3
|
作者
Narasimhan, N [1 ]
Moser, LE [1 ]
Melliar-Smith, PM [1 ]
机构
[1] Univ Calif Santa Barbara, Dept Elect & Comp Engn, Santa Barbara, CA 93106 USA
来源
关键词
interceptor; !text type='Java']Java[!/text] Remote Method Invocation; Dynamic Proxy; middleware;
D O I
10.1002/cpe.575
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
An interceptor is a software mechanism that provides the hooks that are needed to introduce additional code dynamically into the execution path of an application. By exploiting interceptors, developers can enhance and potentially modify the behavior of an application at runtime without having to revise or recompile the application code. We have identified three distinct interception points for the Java Remote Method Invocation (JavaRMI) model, at the proxy level, the transport level and the shared library level of the JavaRMI model. The interceptors implemented at these interception points employ the DynamicProxy API, the RMISocketFactory API, and a library mediation approach, respectively. Our interceptor implementations are novel in that they are transparent to the application, add nominal latency overheads and are easy to deploy, requiring only minimal modifications to the application. We describe how the interceptors can be exploited to introduce additional services (such as logging and profiling mechanisms) to the JavaRMI runtime. In particular, we describe the use of interceptors in the Aroma System to enhance the existing JavaRMI model with support for fault-tolerance through the consistent replication of JavaRMI objects. Copyright (C) 2001 John Wiley & Sons, Ltd.
引用
收藏
页码:755 / 774
页数:20
相关论文
共 50 条
  • [31] A Remote Java']Java RMI Registry
    Haase, Oliver
    Waesch, Juergen
    Zhao, Bo
    DR DOBBS JOURNAL, 2008, 33 (12): : 35 - 39
  • [32] A Java']Java-based agent management system for dynamic invocation of heterogeneous agents
    Jang, J
    Choi, J
    INTERNATIONAL CONFERENCE ON ARTIFICIAL INTELLIGENCE, VOL I AND II, 1999, : 324 - 330
  • [33] Remote data analysis using Java']Java
    Kuhlins, S
    Schader, M
    CLASSIFICATION IN THE INFORMATION AGE, 1999, : 359 - 367
  • [34] Java']Java Remote Job Execution System
    Jiang, Shanliang
    Clements, Stuart
    CISIS 2008: THE SECOND INTERNATIONAL CONFERENCE ON COMPLEX, INTELLIGENT AND SOFTWARE INTENSIVE SYSTEMS, PROCEEDINGS, 2008, : 561 - 566
  • [35] Java']Java based replicated server objects and their remote method invocations in a distributed environment
    Iyer, KV
    Harinath, M
    SOFTWARE-PRACTICE & EXPERIENCE, 2001, 31 (04): : 357 - 370
  • [36] JAVA']JAVA APPLICATION FAULT TOLERANCE TOWARDS UNSAFE NATIVE CODE INVOCATION USING PROCESSBUILDER
    Hooi, Yew Kwang
    Oxley, Alan
    PROCEEDINGS OF THE 2011 3RD INTERNATIONAL CONFERENCE ON SOFTWARE TECHNOLOGY AND ENGINEERING (ICSTE 2011), 2011, : 115 - 120
  • [37] The Design of A Remote Monitoring System Based on Java']Java
    You Xiang-bai
    Liu Yi-min
    Xu Wang-ming
    ICCSIT 2010 - 3RD IEEE INTERNATIONAL CONFERENCE ON COMPUTER SCIENCE AND INFORMATION TECHNOLOGY, VOL 2, 2010, : 149 - 152
  • [38] Embedding remote object mobility in Java']Java RMI
    Avvenuti, M
    Vecchio, A
    EIGHTH IEEE WORKSHOP ON FUTURE TRENDS OF DISTRIBUTED COMPUTING SYSTEMS, PROCEEDINGS, 2001, : 98 - 104
  • [39] Remote fieldbus system management with Java']Java and XML
    Bühler, D
    Küchlin, W
    PROCEEDINGS OF THE 2000 IEEE INTERNATIONAL SYMPOSIUM ON INDUSTRIAL ELECTRONICS, VOL 1 AND 2, 2000, : 1 - 6
  • [40] Accessing remote data servers through Java']Java
    Murray, D
    Whittaker, T
    Kelly, J
    17TH INTERNATIONAL CONFERENCE ON INTERACTIVE INFORMATION AND PROCESSING SYSTEMS (IIPS) FOR METEOROLOGY, OCEANOGRAPHY, AND HYDROLOGY, 2001, : 178 - 181