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
- CloudM Migrate System Requirements
- What Affects Migration Speed?
- Strategies for Optimizing Migration Performance
- Throttling Indicators
- General Migration Troubleshooting: Throttling & Rate Limiting
- Reaching or exceeding Google API quotas
- How to Handle Throttling in Microsoft 365 & Exchange Migrations