Announcement Announcement Module
Collapse
No announcement yet.
RmiServiceExporter takes over 3 mins to bind Page Title Module
Move Remove Collapse
X
Conversation Detail Module
Collapse
  • Filter
  • Time
  • Show
Clear All
new posts

  • RmiServiceExporter takes over 3 mins to bind

    We've got a weird situation with RMI. Of about 25 installations, 2 have trouble with RMI. The others work fine. The symptom is that it takes over 3 mins for RmiServiceExporter to bind (see log below) and then the "client" (RmiProxyFactoryBean) can't connect and takes over 6 mins to fail (see 2nd log below). Please note that the communications is within THE SAME JVM - different web apps. What's happening is that the "client" application is invoking a method on the "server" whenever an error is logged. The "server" web app is monitoring the client.

    Anyway, I don't even know where to start to debug this. I do know that a netstat does show java is listening on the port. This can't be recreated in-house, just in the field at ~ 2 out of 20 installations. Any help would be much appreciated.

    Dell 1950 2Gb machines running Fedora 3 or 6
    Tomcat v5.5
    MySQL v4
    Spring v1.2.8

    "Server"
    Code:
    <bean id="rmiRemotingAlertService" class="org.springframework.remoting.rmi.RmiServiceExporter">
      <property name="service"><ref bean="alertService" /></property>
      <property name="serviceInterface"><value>com.impulse.business.service.alert.AlertService</value></property>
      <property name="serviceName"><value>alert</value></property>
      <property name="registryPort"><value>49999</value></property>
    </bean>
    
    
    2007-08-20 09:17:08,776 INFO [com.impulse.business.service.AlertServiceImpl setUp] -   - <Alert Background Pop started.>
    2007-08-20 09:17:08,817 INFO [org.springframework.remoting.rmi.RmiServiceExporter getRegistry] -   - <Looking for RMI registry at port '49999'>
    2007-08-20 09:20:17,821 WARN [org.springframework.remoting.rmi.RmiServiceExporter getRegistry] -   - <Could not detect RMI registry - creating new one>
    2007-08-20 09:20:17,834 INFO [org.springframework.remoting.rmi.RmiServiceExporter afterPropertiesSet] -   - <Binding RMI service 'alert' to registry at port '49999'>
    "Client"
    Code:
    <bean id="remoteAlertServiceProxy" class="org.springframework.remoting.rmi.RmiProxyFactoryBean" >
      <property name="serviceUrl"><value>rmi://localhost:49999/alert</value></property>
      <property name="serviceInterface"><value>com.impulse.business.service.alert.AlertService</value></property>
      <property name="lookupStubOnStartup"><value>false</value></property>
      <property name="refreshStubOnConnectFailure"><value>true</value></property>
    </bean>
    
    2007-08-14 15:28:50,37 ERROR [SystemCommandsController.java logAnError]-127.0.0.1: <TESTING ERROR: This log is ONLY a test.>
    2007-08-14 15:35:08,64 WARN [SystemCommandsController.java logAnError]-127.0.0.1: <Could not connect to RMI service [rmi://localhost:49999/alert] - retrying>
Working...
X