[
https://issues.apache.org/jira/browse/TINKERPOP-1249?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
stephen mallette closed TINKERPOP-1249.
---------------------------------------
Resolution: Implemented
Assignee: stephen mallette
Fix Version/s: 3.2.3
> Gremlin driver to periodically issue ping / heartbeat to gremlin server
> -----------------------------------------------------------------------
>
> Key: TINKERPOP-1249
> URL: https://issues.apache.org/jira/browse/TINKERPOP-1249
> Project: TinkerPop
> Issue Type: Improvement
> Components: driver
> Affects Versions: 3.1.1-incubating
> Environment: gremlin driver accessing gremlin server behind a load
> balancer / proxy (tested on nginx proxing the gremlin server)
> Reporter: Venkata Phani Kumar Mangipudi
> Assignee: stephen mallette
> Fix For: 3.2.3
>
>
> Gremlin driver currently not sending any ping request to the gremlin server.
> As a result, the websocket channel gets closed by the nginx / load balancer/
> proxy after a period of inactivity.
> This forces the sockets to be left open indefinitely on the proxy/ load
> balancer. Which is not a good practice, because this would lead to socket
> leaks (not sure if that is the right word). What I mean by saying socket
> leak, is: if there are multiple clients (micro services) connecting to the
> same gremlin-server using gremlin driver. They all end up having open
> channels to the server. And the server would never be able to release the
> channels.
> Meaning if the micro services using gremlin driver and having a pool size of
> 10 are restarted say 100 times, there will be 1000 channels open indefinitely
> and there is no way to revoke the killed instances' open channels.
> This has been discussed in gremlin-users group:
> https://groups.google.com/forum/#!topic/gremlin-users/UjaV6sRuKMc
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)