1. A method for load balancing a virtual networking system comprising multiple computing nodes for maintaining one or more data sets of one or more tenants, wherein the multiple computing nodes include a first computing node, a second computing node and a primary computing node, and wherein each computing node comprises a server including one or more resources, the method comprising: at the first computing node: sending a first load information unit for the first computing node to the primary computing node, wherein each load information unit for each computing node relates to actual usage per tenant of one or more resources of the computing node; receiving, from the primary computing node, an instruction to transfer a first data set of a first tenant maintained on the first computing node to the second computing node, wherein the first load information unit exceeds a first programmable threshold value for the first computing node, and wherein a second load information unit for the second computing node is less than a second programmable threshold value for the second computing node; initiating a data transfer of the first data set to the second computing node; receiving, during the data transfer, one or more data updates relating to the first data set; in response to completion of the data transfer: determining a size of the one or more data updates; transferring the one or more data updates to the second computing node; and in response to receiving a data request for the first data set, selecting an operation to perform based on the size of the one or more data updates, wherein the selected operation is one of the following: forwarding the data request to the second computing node, or accepting and processing the data request.