• Webinars
  • Docs
  • Download
  • Blogs
  • Contact Us
Show / Hide Table of Contents
  • Administrator's Guide
  • NCache Architecture
    • Cache Topologies
    • Cache Cluster
    • Local Cache
    • Cache Client
    • Client Cache
    • Data Load Balancing
    • Cache Server Backward Compatibility
    • Client Backward Compatibility
    • Eviction
    • Indexing
    • Runtime Data Sharing
    • Portable Data Types
    • Class Versioning
    • IP Binding with Multiple NICs
    • Graceful Node Down
    • Separate Cache Host Process
    • Self Healing Dynamic Clustering
  • Configuring Caches
    • Create Cache
      • Creating Local Cache
        • Create New Cache
        • Add Existing Cache
      • Creating Clustered Cache
        • Create New Cache Cluster
        • Add Existing Cache Cluster
    • Remove Cache
    • Clear Cache Contents
    • Adding Server Node in Cache Cluster
    • Removing Server Node from Cache Cluster
    • Configuring Basic Cache Settings
      • Cache Size
      • Cache Isolation Levels
      • Cache Data Expiration
      • Cache Data Format
    • Configuring Cache Cluster Settings
      • Ports
      • Operation Timeout
      • Static Replication Interval
      • Connection Retries
      • Retry Interval
    • Add Test Data to Cache
    • Deploy Providers
    • Configuring Query Indexes
    • Registering Classes for Compact Serialization
      • Registering Non-Generic Classes
      • Unregistering Non-Generic Classes
      • Registering Generic Classes
      • Registering Generic Classes Using Generic Type Handler
    • Registering Classes for Portable Data Sharing
    • Configuring Data Source Providers
      • Read-Through Provider
      • Write-Through Provider
      • Write-Through Provider for Write-Behind Operations
    • Configuring Cache Startup Loader
    • Configuring Cache Level Events
    • Configuring Cache Activity Events
    • Configuring Eviction Policy
    • Configuring Compression
    • Configuring Email Notifications
    • Binding Cluster and Client/Server IP with Multiple NICs
      • Binding Cluster with a Dedicated IP
      • Binding Client/Server with a Dedicated IP
    • Configuring Heartbeat
    • Configuring MapReduce
    • Configuring Communication Reliability
    • Auto Start Cache on Boot
    • Nagling
    • Dual Socket
    • Error Logging
    • Configuration Files
      • Client Side Configurations
        • Client Config
        • EFCaching Config
      • Server Side Configurations
        • Cache Config
        • Bridge Config
        • Security Config
      • Cache Server Configuration
  • Management Operations
    • Start Cache
    • Stop Cache
    • Restart Cache
    • Manage Cache Service on a Server Node
    • Apply Configuration
    • Hot Apply Configuration
    • Reset Configuration
    • Data Load Balancing
  • Configuring Cache Clients
    • Adding Client Node in Cluster
    • Removing Client Node from Cluster
    • Configuring Client Node Settings
    • Creating Client Cache
    • Enable Client Cache on Client Nodes
    • Disable Client Cache on Client Nodes
    • Removing Client Cache
    • Configuring Client Cache Settings
  • Configuring Security
    • Configuring Security for Cache Management
    • Configuring Security for Cache
    • Configuring Security for Client Nodes
    • Configuring Encryption for Cache
    • Configure SSL/TLS Encryption in NCache
  • Configuring Bridge for WAN Replication
    • Creating Clustered Bridge
    • Adding Clustered Caches to Bridge
    • Configuring Bridge Settings
    • Configuring Conflict Resolver
    • Changing Cache Syncronization Modes
    • Configuring Master Cache
    • Force State Transfer
    • Connect/Disconnect Cache in Bridge
    • Remove Cache from Bridge
    • Bridge Management
  • NCache on Docker
    • Using NCache Docker Images
    • Customize NCache Dockerfile
  • Monitoring NCache
    • Cache Counters
    • Monitoring Caches using NCache Manager
      • Changing Management Port of Cache Node
      • Configuring Counters to Display
      • Browse Cache Statistics
      • Cluster Health
      • Monitoring Cache Clusters using NCache Email Alerts
    • Monitoring Caches using NCache Monitor
      • Monitoring with Built-In Dashboard
      • Monitoring with Custom Dashboard
    • Monitoring Bridge using NCache Manager
    • Monitoring NCache using Windows PerfMon Tool
      • Monitoring Cache Server Counters Using PerfMon
      • Monitoring Cache Client Counters Using PerfMon
      • Monitoring Bridge Counters Using PerfMon
    • Logging in NCache
      • NCache Log Viewer
      • NCache Monitor Logging
      • Performance Counters Logging
      • Windows Event Logging
      • Email Notifications on NCache Events
      • Cache Server Logging
      • Client Side API Logging
      • Cache Event IDs
    • Troubleshooting NCache Monitoring
      • Computer Name Not Found
      • Diskperf Not Installed
      • No READ Access to the Perflib Subkeys
      • Unable to Connect to Remote Server
    • IPV6 Support
  • Upgrading NCache Versions
    • Live Upgrade NCache Version
    • Upgrade NCache Version Offline
  • Apply Windows Patches on NCache Server

Client Config

Client configuration file (client.ncconf) is used by NCache client API to get initial information for establishing connection with server. This file is universal for all the client instances running on the client node. It is located at %NCHOME%/config. Modules that need to read the configurations, first try to find client.ncconf in application folder. If client.ncconf is not found in application folder, it then reads the configuration from installation folder.

Client configuration file is used by client to connect to OutProc caches. Light weight client also uses this configuration file to connect to the remote caches. This file is automatically updated each time a new cache/cluster is created or cache/cluster configuration settings are applied. Additionally, security information can be provided for each cache in this file.

Note that the same configurations can be specified via the CacheInitParams API in Alachisoft.NCache.Web.Caching. For more detail on how to use the API while initializing caches, please refer to Initializing Cache using CacheInitParams in Programmers' Guide.

Important

The configurations specified through CacheInitParams will override the configurations in client.ncconf ONLY for the client which is specifying them.

Client configuration file is explained below:


<configuration>
  <ncache-server connection-retries="5" retry-connection-delay="0" retry-interval="1" command-retries="3" command-retry-interval="0.1" client-request-timeout="90" connection-timeout="5" port="9800" local-server-ip="20.200.20.38" enable-keep-alive="true" keep-alive-interval="30" />
  <cache id="myreplicatedcache" client-cache-id="repclientcache" client-cache-syncmode="optimistic" default-readthru-provider="" default-writethru-provider="" load-balance="True" enable-client-logs="False" log-level="error">
    <server name="20.200.20.38"/>
    <server name="20.200.20.23"/>
  </cache>
  <cache id="mypartitionedcache" client-cache-id="partitionedclientcache" client-cache-syncmode="optimistic" default-readthru-provider="" default-writethru-provider="" load-balance="True" enable-client-logs="False" log-level="error">
    <server name="20.200.20.29"/>
    <server name="20.200.20.56"/>
  </cache>
  </configuration>

client-request-timeout: Client-request-timeoutis the period for which client API waits for a response for a command from the server. After this period is elapsed an "OperationFailedException" is thrown. By default it is 90 seconds and minimum value could be 60 seconds. Time span specified less than minimum value will automatically be reset to minimum value i.e. 60 seconds.

connection-retries: connection-retries are the number of retries the client makes on the whole list of servers mentioned in the client.ncconf at the time of connection establishment. It is the same for connection break scenario.

retry-interval: If connection with cache server is dropped, then client tries to reconnect with the server and retry connection delay flag introduces the delay between each retry. This flag is specified in seconds.

connection-timeout: connection-timeout is the period threads wait before throwing OperationFailedException during connection-break, while one thread tries to establish connection with cache server. If the connection is successfully established then, all threads will complete their respective operations. Otherwise, they will throw OperationFailedException.

retry-connection-delay: retry-connection-delay is the time interval when client API waits before going through another iteration of connection-retries. Delay is specified in seconds.

enable-keep-alive: enable-keep-alive specifies whether the connection between the client and server should be kept "alive", i.e., if the client is inactive (not communicating with its connected servers), it sends heart-beats or pings from client to server nodes after fixed intervals according to the cache topology. This feature is particularly useful if there is a firewall which breaks idle network connections or if it detects connection breakages proactively.

keep-alive-interval: keep-alive-interval is the interval in seconds after which a heart beat is sent from the idle client to server to sustain the connection. The interval range is between 1 and 7200 seconds with default set at 30 seconds. If any value is specified out of the range, NCache resorts to using the default value.

default-readthru-provider: Gets/Sets ID of default ReadThru Provider. If the provider is specified through API, this value will be overwritten with the value passed from API.

default-writethru-provider: Gets/Sets ID of default WriteThru Provider. If the provider is specified through API, this value will be overwritten with the value passed from API.

load-balance: When this flag is set, client tries to connect to the optimum server in terms of number of connected clients. This way almost equal number of clients are connected to every node in the clustered cache and no single node is overburdened.

Back to top Copyright © 2017 Alachisoft