Giter Club home page Giter Club logo

Comments (10)

krobertson avatar krobertson commented on July 22, 2024

Thanks for the report! That looks like it could be an issue, and I think it is the source of a bug we had internally found recently, but hadn't investigated deeper.

I don't know if @derekcollison will have the bandwidth to look at it in the next day or two, but I'll work on getting a test together to confirm it and see. I'll follow up once I can confirm it.

from nats.go.

derekcollison avatar derekcollison commented on July 22, 2024

The readLoop is recycled on each reconnect, meaning the Go routine for an existing connection is torn down and a new one created. I will look into whether or not there is a race with the state of the connection and a new readLoop upon reconnect. Thanks.

from nats.go.

qinguoan avatar qinguoan commented on July 22, 2024

looking forward for your reply.

Date: Wed, 17 Sep 2014 06:31:14 -0700
From: [email protected]
To: [email protected]
CC: [email protected]
Subject: Re: [nats] reconnet problem and fix (#29)

The readLoop is recycled on each reconnect, meaning the Go routine for an existing connection is torn down and a new one created. I will look into whether or not there is a race with the state of the connection and a new readLoop upon reconnect. Thanks.

¡ª
Reply to this email directly or view it on GitHub.

from nats.go.

derekcollison avatar derekcollison commented on July 22, 2024

How were you measuring the subsequent number of client connections? Looking at gnatsd or querying the clients themselves?

from nats.go.

qinguoan avatar qinguoan commented on July 22, 2024

Derekcollison,
First thanks for your reply. I have a 3 servers cluster. I use netstat -na | grep 4244 on each server to check how many clients connected to the server. Once I killed gnatsd I run the command to check which server got clients and plus all exist clients to check if any client is lost. After I killed and checked I start gnatsd on the server again, and I killed another server like previous.

from nats.go.

derekcollison avatar derekcollison commented on July 22, 2024

How long do you wait to restart the gnatsd server?

So to clarify, during this test you will see less clients successfully
reconnect to the server? Are all clients running in the same program? Is it
20 clients? Are they all Go based?

On Tue, Oct 7, 2014 at 6:17 AM, qinguoan [email protected] wrote:

Derekcollison,
First thanks for your reply. I have a 3 servers cluster. I use netstat
-na | grep 4244 on each server to check how many clients connected to the
server. Once I killed gnatsd I run the command to check which server got
clients and plus all exist clients to check if any client is lost. After I
killed and checked I start gnatsd on the server again, and I killed another
server like all what I did above.


Reply to this email directly or view it on GitHub
#29 (comment).

from nats.go.

derekcollison avatar derekcollison commented on July 22, 2024

I have located the issue, will work on a solution to the problem. Thanks again.

from nats.go.

qinguoan avatar qinguoan commented on July 22, 2024

sorry for my delay.

  1. I wait for like a minute or a bit more.
  2. Some will success but some failed.
  3. Run on different machines.
  4. All go based, use your lib.

from nats.go.

derekcollison avatar derekcollison commented on July 22, 2024

I have found the problem, working through a solution, should be posted this
week. Thanks.

On Wed, Oct 15, 2014 at 3:14 AM, qinguoan [email protected] wrote:

sorry for my delay.

  1. I wait for like a minute or a bit more.
  2. Some will success but some failed.
  3. Run on different machines.
  4. All go based, use your lib.


Reply to this email directly or view it on GitHub
#29 (comment).

from nats.go.

ricktian1226 avatar ricktian1226 commented on July 22, 2024

I have just fix this issue in my project, with derek‘s kindly help.
Thank all you guys~

from nats.go.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.