Skip to main content

Performance Tuning Guide

Note: This guide relates to CloudM Migrate Self-Hosted deployments. 

This document serves as a technical reference for administrators and support teams looking to fine-tune the performance of their CloudM Migrate projects. It details all available settings that can impact migration speed, concurrency, and stability.


Important Considerations & Best Practices

  • Important: CloudM Migrate Self-Hosted vs. CloudM Migrate Hosted:
    • Self-Hosted Focus: This guide is written primarily for CloudM Migrate Self-Hosted deployments.
    • Hosted:
      • While users of CloudM Migrate Hosted have access to project-level configuration options, it is not recommended to change them due to the managed nature of the service.
      • The underlying performance settings in the CloudM Migrate Service Manager are reserved for the CloudM Support and Development teams and are adjusted proactively or reactively as needed.
  • Review and Plan Your Changes: Before adjusting any settings, review the configuration options below to create an informed strategy. Because every migration is unique to its environment, the optimization process is often a matter of informed trial and error.
    • Changes to these settings will not take effect until the migration has been stopped and resumed.
  • Server Performance: The performance of your migration is fundamentally tied to your server's hardware (CPU, RAM, Disk I/O) and network connectivity. No amount of fine-tuning will overcome a hardware bottleneck. For more information, see our guide on What Affects Migration Speed?.
  • Consult Support: Many of these settings have complex interactions. It is strongly recommended that you consult a member of the CloudM Support team before changing values from their defaults.

Performance Tuning Settings

The settings below are organized by function to help you identify the right solution for your specific needs.

Concurrency & Load Balancing

These settings are the primary levers for controlling the number of parallel operations and distributing the workload.

Setting Name Description Location Best Practice
Maximum User Migrations The maximum number of user migrations to run per Secondary Service simultaneously. CloudM Migrate Service Manager > Migration Limits This is the primary concurrency lever. Increase for higher throughput, decrease to manage throttling.
Simultaneous Migrations per configuration limit The number of migrations to run per configuration. Zero turns the setting off. The service level configuration for "maximum user migrations" per server will always override this setting. Configuration > Advanced Settings > System Use this to limit a single configuration from consuming all available resources.
Process data types in parallel Enable this option to process drive data in a separate worker process, alongside mail, contacts, calendars, and other data types. Configuration > Advanced Settings > System Enable to increase throughput by migrating multiple data types at once.
Allocate Migration Items Based On Parent Configures whether migration items are allocated based on configuration or parent configuration. CloudM Migrate Service Manager > Migration Balancer Use with caution, as it can affect how workload is distributed across services.
Allocate Migration Items Busy First Determines whether migration items are allocated to secondary servers based on a busy-first algorithm. CloudM Migrate Service Manager > Migration Balancer This should generally remain at its default setting.
Unresponsive Secondary Timeout The maximum time to wait for status updates from a Secondary Service before it is taken out of operation. CloudM Migrate Service Manager > System Timeouts Default is recommended. Only change on the instruction from Support.
 

Timeouts & Retries

These settings control how the service handles temporary failures and communication issues.

Setting Name Description Location Best Practice
Retry Count The number of times a failed transaction with a server will be retried before aborting. Configuration > Advanced Settings > System A higher value increases reliability but may increase migration time. Default is recommended.
Timeout The time in milliseconds that the tool has to complete a transaction before an error occurs. Configuration > Advanced Settings > System Recommended to set to a high value to ensure large requests succeed.
Max wait time The maximum time that a wait operation can wait between exponential backoff retry attempts. Configuration > Advanced Settings > System Do not change without CloudM Support guidance.
 

Platform-Specific Settings

These settings are tailored to the unique API behaviors of each platform.

Setting Name Description Location Best Practice
Drive thread count The number of simultaneous per-user threads when migrating documents. Configuration > Advanced Settings > System The default is generally sufficient. Lower this value to resolve specific Drive-related throttling issues.
SharePoint Migration API Enables the high-performance SharePoint Migration API, which is designed for high-volume data transfer. Configuration > Destination Settings (Microsoft 365) Recommended for all migrations to SharePoint Online and OneDrive for Business. Enabled by default.
Email Import Thread Count Set the number of threads that will be used per user to migrate email to Google Workspace. Configuration > Destination Settings (Google Workspace) The default is recommended. This can be increased to increase speed.
Use Chunked HTTP Web Requests Optimizes large file migrations by not reading the entire payload into memory. Enforced for Office 365. Configuration > Destination Settings (Microsoft 365) Recommended for all migrations. Enabled by default for Office 365.
Maximum Batch Count The number of items that will be sent in a single batch when transferring contacts and calendar items. Configuration > Source Settings (Google Workspace) or Configuration > Destination Settings (Google Workspace) Use 0 to allow the tool to automatically allocate batches, which is recommended.
Process data types in parallel Enable this option to process Drive data in a separate worker process, alongside mail, contacts, calendars, and other data types. Configuration > Advanced Settings > System Use this to increase throughput by migrating multiple data types at once.
Lock Retry Count The number of times a failed distributed lock will be attempted before aborting. Configuration > Destination Settings (Google Workspace) Do not change without CloudM Support guidance.
Box Retry count The number of times an operation will be attempted before failing. Configuration > Source Settings (Box) The default is recommended.
Box Timeout The timeout that will apply to communications with the Box server. It's recommended to contact our Support team before changing this value. Configuration > Source Settings (Box) Do not change without CloudM Support guidance.
Dropbox Export batch size The maximum number of items to return per list folder request. Configuration > Source Settings (Dropbox) The default is recommended.
Dropbox Retry count The number of times an operation will be attempted before failing. Configuration > Source Settings (Dropbox) The default is recommended.
Dropbox Timeout The timeout that will apply to communications with the Dropbox server. Configuration > Source Settings (Dropbox) The default is recommended.
 

Server & Health Settings

These settings relate to the overall health and stability of the migration services.

Setting Name Description Location Best Practice
Heartbeat The interval at which Secondary Services provide state information to the Primary Service. CloudM Migrate Service Manager > Service Do not change without CloudM Support guidance.
Monitor CPU usage Enable this option to monitor CPU usage on all servers throughout the migration process. Configuration > Advanced Settings > System Recommended to enable for troubleshooting or performance monitoring.
Memory usage check Rate limit the migration using available system memory. Configuration > Advanced Settings > System Do not change without CloudM Support guidance.
Unresponsive Secondary Timeout The maximum time to wait for status updates from a Secondary Service before it is taken out of operation. CloudM Migrate Service Manager > System Timeouts Do not change without CloudM Support guidance.
Primary Persist State Interval The interval (in minutes) at which the migration service state is persisted by the Primary Service. CloudM Migrate Service Manager > System Timeouts Do not change without CloudM Support guidance.

Related Resources

Was this article helpful?
0 out of 0 found this helpful