ShareFile user requests for file uploads, downloads, and deletions are handled by StorageZones Controller, which then communicates with the connected storage. For example, if the connected storage is Windows Azure and a ShareFile user uploads a file, the ShareFile client sends the file to the persistent storage cache. StorageZones Controller then uploads the file to Windows Azure.
StorageZones Controller manages the persistent storage cache using configurable settings in C:\inetpub\wwwroot\Citrix\StorageCenter\SCFileCleanSvc\FileDeleteService.exe.config. The settings that are specific to Windows Azure are noted in this discussion.
For uploaded files:
- StorageZones Controller places uploaded files in a persistent storage cache (the PersistentStorage folder).
- The following settings control the timing of delete service operations:
specifies the minimum time span between when a
file was last accessed and when it can be deleted. Defaults to 1
day. Minimum setting is 8 hours.
specify the start and stop times for file
deletion. Defaults to 2 a.m. and 4 a.m.
- ProducerTimerInterval and DeleteTimerInterval
control the frequency of delete service
operations. Please contact support if the default values (1 day)
are not appropriate for your site.
- The delete services also manages folders that contain temporary items such as encryption keys and queued files. The delete service removes those items 24 hours after they are created.
- For Windows Azure storage only:
- The delete service determines whether a file in the storage cache has a corresponding blob in an Azure storage container.
- By default, every 10 seconds (CheckSizeThreasholdTimer) the delete service determines if the storage
cache has exceeded a disk threshold of 10 GB (DiskSpaceDropoutThresholdGB). If the threshold is exceeded, the delete
service removes files that have not been accessed in the past hour
When the delete service runs as the result of
normal scheduling (and not because the disk size reached the
threshold), the service deletes files that have not been accessed
in the past 24 hours (CacheCleanupFileThresholdPeriodNormal) if the blob is in Azure. If the blob is not
in Azure, the file remains in the storage cache.
For downloaded files:
- When StorageZones Controller receives a download request, it downloads the file from the persistent storage cache if the file is there. If the file is not in that cache, the controller downloads the file from Azure to the persistent storage cache. The delete service removes files that have not been accessed for the past 24 hours (CacheCleanupFileThresholdPeriodNormal).
For deleted files:
- The delete service gets from the ShareFile application a list of files that were deleted 7 days ago (Period).
- The delete service then removes the corresponding files from the storage location or the corresponding Azure blobs from the Azure container.