Skip to main content
Skip table of contents

FileCloud Sizing Guide

This document explains hardware sizing and high availability setup for FileCloud deployments.

  • The FileCloud system can be deployed on physical servers 
  • FileCloud Server can also be deployed in a virtualized environment (VMware, XEN) 
  • The FileCloud system integrates with any NFS, CIFS, SAN appliance, or s3 compatible object-storage system for file storage

FileCloud Hardware Sizing

The following table shows the underlying usage assumptions used to calculate FileCloud Hardware requirements.

The model assumes:

  • a user interacts 60 times per day using one of the FileCloud clients (browser, mobile app, Drive client) 
  • every user synchronizes data with a Sync client on an average of 2.5 computers 

Based on these usage assumptions, FileCloud servers need :

  • to handle 290-300 calls per second 
  • to support 3000 users

FileCloud Performance Model

Browser + Mobile + Drive Apps


Browser + Mobile + Drive Client Interactions Per Day

60

No of API calls per Interaction

20

Calls Per Second Per User

0.013889

  

Desktop Sync App


% of Users using sync app

250

Sync Check Frequency (secs)

30

Sync App Online (Hours)

24

Calls Per Second per User

0.083333



Total Calls Per Second Per User (Sync + other Apps)

0.097222



User Counts


Total users in installation

3000

Total Calls Per Second

291.67



Server Performance


Server Handles Requests Per Second

125

Servers Needed

2.33

  

8-16 CPU 2.6 GHz Intel Xeon with 32 GB RAM

~125-150 reqs/sec

To calculate how many web server nodes you will need to support based on number of users, you can use the linked spreadsheet. 

FileCloud Sizing Model.xlsx

High-Availability Requirements

The following diagram explains the FileCloud High Availability Setup

 

 

ComponentRequirementsNotes
Web App Server

1 AWS m4.2xlarge instance can handle approximately 125-150 FileCloud requests per second.

To handle 3000 users one will require 2-3 web server instances with m4.2xlarge configuration. 

AWS m4 instances uses processors identical to Intel E5-2670 v3 processors. 

To equate this to a virtualized environment, you will require 3 VM nodes and each node need to have the following specs: 8 vCPUs and 32 GB RAM. 

SSDs are recommended for application servers. 



Load Balancer

You must have a software (haproxy) or hardware load balancer for the web application servers.

In a virtualized environment, a load balancer is equivalent to a computer with the following specs:

  • 1-2 vCPU
  • 4-8 GB RAM

If you choose to go with HAPROXY, you must use one of the specs for the load balancer:

  • m4.large
Database Server

You will need a 3 node MongoDB replica set for FileCloud HA configuration.

  • Each node must have the specs of m4.xlarge or equivalent configuration.  
  • In a virtualized environment it is equivalent to 8-16 vCPU and 16-32 GB RAM.
  • More RAM is better for the Database because MongoDB keeps the working set in RAM
  • SSDs are recommended for database servers

You can probably use 1 TB SSD for each of the node.

It is ideal if the MongoDB node VMs can be housed in different physical host.

Network

For the front-end network, the following is recommended:

  • A gigabit or 10GigE network leading to a load balancer and from the load balancer to the 3 web app servers.
  • At least a gigabit Ethernet

For internal networking between the servers, the following is also recommend:

  • At least a Gigabit Ethernet to reduce the potential for bottlenecks.

Each server should have a dedicated connection to:

  • Database cluster
  • File storage (CIFS, NFS or SAN).
File Storage

If an average usage is 5-10 GB per user, then you will require:

  • 25-30 TB space (3000 users) in your storage appliance
  • Storage must be exposed as CIFS or NFS share in the web application server instances

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.