Class IgniteClientConfiguration
Ignite client driver configuration.
public sealed record IgniteClientConfiguration : IEquatable<IgniteClientConfiguration>
- Inheritance
-
IgniteClientConfiguration
- Implements
- Inherited Members
Constructors
IgniteClientConfiguration()
Initializes a new instance of the IgniteClientConfiguration class.
public IgniteClientConfiguration()
IgniteClientConfiguration(IgniteClientConfiguration)
Initializes a new instance of the IgniteClientConfiguration class.
public IgniteClientConfiguration(IgniteClientConfiguration other)
Parameters
other
IgniteClientConfigurationOther configuration.
IgniteClientConfiguration(params string[])
Initializes a new instance of the IgniteClientConfiguration class.
public IgniteClientConfiguration(params string[] endpoints)
Parameters
endpoints
string[]Endpoints.
Fields
DefaultHeartbeatInterval
Default heartbeat interval.
public static readonly TimeSpan DefaultHeartbeatInterval
Field Value
DefaultPort
Default port.
public const int DefaultPort = 10800
Field Value
DefaultReconnectInterval
Default reconnect interval.
public static readonly TimeSpan DefaultReconnectInterval
Field Value
DefaultSocketTimeout
Default socket timeout.
public static readonly TimeSpan DefaultSocketTimeout
Field Value
Properties
Authenticator
Gets or sets the authenticator. When null, no authentication is performed.
See BasicAuthenticator.public IAuthenticator? Authenticator { get; set; }
Property Value
Endpoints
Gets endpoints to connect to.
Providing addresses of multiple nodes in the cluster will improve performance: Ignite will balance requests across all connections, and use partition awareness to send key-based requests directly to the primary node. Examples of supported formats: * 192.168.1.25 (default port is used, see DefaultPort). * 192.168.1.25:780 (custom port) * 192.168.1.25:780..787 (custom port range) * my-host.com (default port is used, see DefaultPort). * my-host.com:780 (custom port) * my-host.com:780..787 (custom port range).public IList<string> Endpoints { get; }
Property Value
HeartbeatInterval
Gets or sets the heartbeat message interval.
Default is DefaultHeartbeatInterval. When server-side idle timeout is not zero, effective heartbeat interval is set toMin(HeartbeatInterval, IdleTimeout / 3)
.
When client connection is idle (no operations are performed), heartbeat messages are sent periodically
to keep the connection alive and detect potential half-open state.
public TimeSpan HeartbeatInterval { get; set; }
Property Value
LoggerFactory
Gets or sets the logger factory. Default is Instance.
public ILoggerFactory LoggerFactory { get; set; }
Property Value
OperationTimeout
Gets or sets the operation timeout. Default is InfiniteTimeSpan (no timeout).
An "operation" is a single client request to the server. Some public API calls may involve multiple operations, in which case the operation timeout is applied to each individual network call.public TimeSpan OperationTimeout { get; set; }
Property Value
ReconnectInterval
Gets or sets the background reconnect interval.
Default is DefaultReconnectInterval. Set to Zero to disable periodic reconnect. Ignite balances requests across all healthy connections (when multiple endpoints are configured). Ignite also repairs connections on demand (when a request is made). However, "secondary" connections can be lost (due to network issues, or node restarts). This property controls how ofter Ignite client will check all configured endpoints and try to reconnect them in case of failure.public TimeSpan ReconnectInterval { get; set; }
Property Value
RetryPolicy
Gets or sets the retry policy. When a request fails due to a connection error, Ignite will retry the request if the specified policy allows it.
Default is RetryReadPolicy - retry read operations up to DefaultRetryLimit times. See also RetryLimitPolicy, RetryReadPolicy, RetryNonePolicy, RetryLimit.public IRetryPolicy RetryPolicy { get; set; }
Property Value
SocketTimeout
Gets or sets the socket timeout.
The timeout applies to the initial handshake procedure and heartbeats (see HeartbeatInterval). If the server does not respond to the initial handshake message or a periodic heartbeat in the specified time, the connection is closed with a TimeoutException. Use InfiniteTimeSpan for infinite timeout.public TimeSpan SocketTimeout { get; set; }
Property Value
SslStreamFactory
Gets or sets the SSL stream factory.
When not null, secure socket connection will be established. See SslStreamFactory.public ISslStreamFactory? SslStreamFactory { get; set; }