diff --git a/cluster/cluster_impl/failback_cluster_invoker.go b/cluster/cluster_impl/failback_cluster_invoker.go
index 08b15770b4e09e896c1a9222d70d7f9b50d0fc74..027461ccb7f32d6383d756ac986295b6300f249c 100644
--- a/cluster/cluster_impl/failback_cluster_invoker.go
+++ b/cluster/cluster_impl/failback_cluster_invoker.go
@@ -175,7 +175,9 @@ func (invoker *failbackClusterInvoker) Destroy() {
 	invoker.baseClusterInvoker.Destroy()
 
 	// stop ticker
-	invoker.ticker.Stop()
+	if invoker.ticker != nil {
+		invoker.ticker.Stop()
+	}
 
 	_ = invoker.taskList.Dispose()
 }