Class SyncOptimizeDriver

java.lang.Object
org.duracloud.syncoptimize.SyncOptimizeDriver

public class SyncOptimizeDriver extends Object
This is the starting point the for Sync optimizer. The purpose of this tool is to determine the optimal number of threads that should be used to run the DuraCloud SyncTool such that the greatest transfer rate possible is achieved.
Author:
Bill Branan Date: 5/16/14
  • Constructor Details

    • SyncOptimizeDriver

      public SyncOptimizeDriver(boolean printStatus)
      Creates the SyncToolDriver
      Parameters:
      printStatus - indicates whether or not status information should be printed to the console while the tool is running
  • Method Details

    • getOptimalThreads

      public int getOptimalThreads(SyncOptimizeConfig syncOptConfig) throws IOException
      Determines the optimal SyncTool thread count value. This value is discovered by running a series of timed tests and returning the fastest performer. The results of these tests depend highly on the machine they are run on, and the capacity of the network available to that machine.
      Parameters:
      syncOptConfig - tool configuration
      Returns:
      optimal thread count
      Throws:
      IOException
    • getSyncTestStatus

      public SyncTestStatus getSyncTestStatus()
      Gets a listing of status events that have occurred (mostly test completion events) as the tests are running.
      Returns:
      sync status
    • main

      public static void main(String[] args) throws Exception
      Picks up the command line parameters and kicks off the optimization tests
      Parameters:
      args -
      Throws:
      Exception