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

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

Fair point. Regarding the ping, I would like the ping to make sure that my 
implementation of Graph works. In the mysql world, an equal feature would be to 
have an access controlled admin database (ADMINDB), and ping is a simple INSERT 
into ADMINDB. This tests the engine and the storage in a simple operation. 
Which bring me to my followup question, is it possible to have an access 
restricted graph, which I can use for such things and not expose it out to 
clients? 

> 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