[ 
https://issues.apache.org/jira/browse/TINKERPOP-1249?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15431515#comment-15431515
 ] 

Karthik Rajan commented on TINKERPOP-1249:
------------------------------------------

Thanks Stephen. 

> 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
>            Priority: Critical
>
> 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)

Reply via email to