private void Start()
 {
     _lifecycleService.SetStarted();
     try
     {
         _invocationService.Start();
         _connectionManager.Start();
         _clusterService.Start();
         _proxyManager.Init(_config);
         _listenerService.Start();
         _loadBalancer.Init(GetCluster(), _config);
         _partitionService.Start();
     }
     catch (InvalidOperationException)
     {
         //there was an authentication failure (todo: perhaps use an AuthenticationException
         // ??)
         _lifecycleService.Shutdown();
         throw;
     }
 }