Disabling Reconnect

You can disable automatic reconnect with connection options:

Go

  1. // Disable reconnect attempts
  2. nc, err := nats.Connect("demo.nats.io", nats.NoReconnect())
  3. if err != nil {
  4. log.Fatal(err)
  5. }
  6. defer nc.Close()
  7. // Do something with the connection

Java

  1. Options options = new Options.Builder().
  2. server("nats://demo.nats.io:4222").
  3. noReconnect(). // Disable reconnect attempts
  4. build();
  5. Connection nc = Nats.connect(options);
  6. // Do something with the connection
  7. nc.close();

JavaScript

  1. const nc = await connect({
  2. reconnect: false,
  3. servers: ["demo.nats.io"],
  4. });

Python

  1. nc = NATS()
  2. await nc.connect(
  3. servers=[
  4. "nats://demo.nats.io:1222",
  5. "nats://demo.nats.io:1223",
  6. "nats://demo.nats.io:1224"
  7. ],
  8. allow_reconnect=False,
  9. )
  10. # Do something with the connection
  11. await nc.close()

Ruby

  1. require 'nats/client'
  2. NATS.start(servers: ["nats://127.0.0.1:1222", "nats://127.0.0.1:1223", "nats://127.0.0.1:1224"], reconnect: false) do |nc|
  3. # Do something with the connection
  4. # Close the connection
  5. nc.close
  6. end

C

  1. natsConnection *conn = NULL;
  2. natsOptions *opts = NULL;
  3. natsStatus s = NATS_OK;
  4. s = natsOptions_Create(&opts);
  5. if (s == NATS_OK)
  6. s = natsOptions_SetAllowReconnect(opts, false);
  7. if (s == NATS_OK)
  8. s = natsConnection_Connect(&conn, opts);
  9. (...)
  10. // Destroy objects that were created
  11. natsConnection_Destroy(conn);
  12. natsOptions_Destroy(opts);

{% endtabs %}