EJB heartBeat interval and tcp-keep-alive
abhinav.gupta01 Jan 13, 2017 7:20 AMHello,
We are using WildFly 9.0.2 for our application.
Here we have a client server communication over EJB between two wildfly servers running on different host.
On high level server one call EJB exposed on server2 and server2 process the request and return back response.
Now based on complexity of request it could take considerable amount of time to server2 to give response. On our inhouse testing setup everything works good ; But our client holds a firewall in between and firewall start dropping connections. ( Mostly because it reach state connection timeout at firewall ). We are sure that connection is drop on firewall because if we increase the timeout application works.
I looked in direction to pass hearbeat interval and keepalive to EJB , but seems some issue in my configuration.
We are passing all property to javax.naming.InitialContext.InitialContext as below : Below is xml which we parse and add as properties.
<Param Name="java.naming.factory.initial">org.jboss.naming.remote.client.InitialContextFactory</Param>
<Param Name="java.naming.provider.url">http-remoting://<host>:8080< Param>
<Param Name="java.naming.security.principal">ejb</Param>
<Param Name="java.naming.security.credentials">xrgv+f3+4hc=</Param>
<Param Name="jboss.naming.client.ejb.context">true</Param>
<Param Name="remote.connection.default.connect.options.org.jboss.remoting3.RemotingOptions.HEARTBEAT_INTERVAL">5000</Param>
<Param Name="remote.connection.default.connect.options.org.xnio.Options.KEEP_ALIVE">true</Param>
For testing we just halt our application after jump to server2 and take a look at wireshark to capture tcp alive packets. But we don’t see any packets.
I tried below things but didn't worked :
- Adding above properties in a file jboss-ejb-client.properties and add this file as wildfly module + add this module to jboss-deployment-structure of ear to get it deployed.
- Add this to file via System.setProperty() .. on variable "jboss.ejb.client.properties.file.path"
Please suggest. Attaching standalone-full.xml.
Thanks,
Abhinav