You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I'm also see this on TLS failures (CLIFF statements are instrumentation I added to the nats.go package):
CLIFF: connect
CLIFF: processConnectInit
CLIFF: sendConnect returned: nats: expected 'PONG', got ''
CLIFF: processConnectInit returned: nats: expected 'PONG', got ''
CLIFF: 1
CLIFF: close()
NATS: TLS required: true
2020/08/17 11:32:54 Nats started
CLIFF: doReconnect
CLIFF: 2
CLIFF: close()
2020/08/17 11:32:54 NATS Disconnected!
2020/08/17 11:32:54 Connection to NATS is closed! -- this should never happen, waiting 15m then exitting
Increasing the TLS Timeout on the server fixes the above issue. With IoT devices on cellular networks, this can be problematic because the connection is not always reliable, and can get quite slow at times.
Use Case:
For IoT devices running the NATS client, we would like to keep the *nats.Conn object for the entire lifecycle of the application, as it might be doing other things like running rules, controlling things, etc. Recreating the nats connection requires us to re-setup subscriptions, etc.
Proposed Change:
Provide an option to not disconnect on TLS or Auth failures.
Who Benefits From The Change(s)?
People implementing IoT clients where NATS is our only access to the device -- we can't easily restart more like a microservice.
Alternative Approaches
Perhaps provide a way we can initiate a re-connect without creating a new nats.Conn -- this would allows us to manage the reconnection manually.
The text was updated successfully, but these errors were encountered:
Feature Request
Provide option to not disconnect on Auth/TLS errors. The auth case has been discussed before:
#499 (comment)
I'm also see this on TLS failures (CLIFF statements are instrumentation I added to the nats.go package):
Increasing the TLS Timeout on the server fixes the above issue. With IoT devices on cellular networks, this can be problematic because the connection is not always reliable, and can get quite slow at times.
Use Case:
For IoT devices running the NATS client, we would like to keep the *nats.Conn object for the entire lifecycle of the application, as it might be doing other things like running rules, controlling things, etc. Recreating the nats connection requires us to re-setup subscriptions, etc.
Proposed Change:
Provide an option to not disconnect on TLS or Auth failures.
Who Benefits From The Change(s)?
People implementing IoT clients where NATS is our only access to the device -- we can't easily restart more like a microservice.
Alternative Approaches
Perhaps provide a way we can initiate a re-connect without creating a new nats.Conn -- this would allows us to manage the reconnection manually.
The text was updated successfully, but these errors were encountered: