Graceful Node Down
With client operations, many operations that are performed in the background of cluster cache. When any server node in the cluster cache is stopped, all those background operations are lost which results in data loss. To avoid operation loss, you should always gracefully down any node. Server nodes are not stopped until all background operations are completed or graceful downtime has elapsed.
If any task takes a longer time than its shutdown timeout like in write-behind, database transactions can take longer than the expected time. Then the count of remaining operations will be written in cache server logs. But those operations will be lost.
How to Configure Graceful Node Down
Configurable timeouts: Shutdown timeouts are configurable in the cache server configuration file found in the NCache installation as follows:
- .NET: Alachisoft.NCache.Service.exe.config located in %NCHOME%/bin/service
- .NET Core Windows: Alachisoft.NCache.Service.dll.config located in %NCHOME%\bin\service
- .NET Core Linux: Alachisoft.NCache.Daemon.dll.config located in /opt/ncache/bin/service
- Java Windows: Alachisoft.NCache.Service.dll.config located in %NCHOME%\bin\service
- Java Linux: Alachisoft.NCache.Daemon.dll.config located in /opt/ncache/bin/service
Use these tags to configure shutdown timeouts:
CacheServer.GracefullShutdownTimeout:
Total timeout of a graceful shutdown. The default is 180 seconds.CacheServer.BlockingActivityTimeout:
Timeout of wait for operations completion which is started before blocking activity.The default is 3 seconds.
See Also
IP Binding with Multiple NICs
Separate Cache Host Process
Self Healing Dynamic Clustering
Class versioning (Same Platform)