Skip to main content

What is ftpbenchmark?

It’s benchmark for load testing FTP servers.

Feature

  • login benchmark

  • upload benchmark (STOR command)

  • download benchmark (RETR command)

  • run test for multiple servers

  • auto-detection for dns round-robin records

  • save result to cvs file

Requires

Installation

Simple from pypi:

$ pip install ftpbenchmark

From source:

$ git clone https://github.com/imjoseangel/ftpbenchmark
$ cd ftpbenchmark/
$ python setup.py install  # auto install all requires

Standalone for debian:

$ apt-get install python-gevent python-dnspython
$ git clone https://github.com/imjoseangel/ftpbenchmark
$ cd ftpbenchmark/ftpbenchmark/
$ wget https://raw.githubusercontent.com/selectel/timecard/master/timecard/timecard.py
$ python ftpbenchmark.py --help

Usage

Run:

$ ftpbenchmark --help

FTP benchmark.

Usage:
    ftpbenchmark --help
    ftpbenchmark -n <host> -u <user> -p <password> [options] --login
    ftpbenchmark -n <host> -u <user> -p <password> [options] --upload -w <workdir> [-s <size>]
    ftpbenchmark -n <host> -u <user> -p <password> [options] --download -w <workdir> [-s <size>] [--files <count>]

Connection options:
    -n <host>, --host=<host>              FTP host [default: 127.0.0.1:21]
                                          You can list multiple servers, separated by commas,
                                          e.g.: -h 10.0.0.1,10.0.0.2,10.0.0.3.
                                          Auto-detection of dns round-robin records is supported.
    -u <user>, --user <user>              FTP user
    -p <password>, --password <password>  FTP password

Timing options:
    -t <sec>, --timeout <sec>             Timeout for operation [default: 10]
    -m <minutes>, --maxrun <minutes>      Duration of benchmarking in minutes [default: 5]
    -x <sec>, --fixevery <sec>            Recording period for stat values [default: 5]

Benchmark options:
    -c <count>, --concurrent <count>      Concurrent operations [default: 10]
    -v <file>, --csv <file>               Save result to csv file
    -w <workdir>, --workdir <workdir>     Base ftp dir to store test files
    -s <size>, --size <size>              Size of test files in MB [default: 10]
    -f <count>, --files <count>           Number of files generated for download test [default: 10]

Release files for ftpbenchmark 1.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for ftpbenchmark 1.1.0
File Size Uploaded
ftpbenchmark-1.1.0.tar.gz 5.5 kB Details

Release files / ftpbenchmark-1.1.0.tar.gz

Download URL ftpbenchmark-1.1.0.tar.gz
Size 5.5 kB
Tags Source
SHA-256 checksum
How to use checksums
8af3523bfd5cdb569e621033f70f6abe31ee0558d34d05eec12ac832c844febc
BLAKE2b-256 checksum
How to use checksums
0912bf5a91ae5ff28b32695d6cf952adcaa4a406eb11d834fcf746cf02839922
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.6.1 requests/2.24.0 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.8.6

Release history Release notifications | RSS feed

This release

1.1.0 This release

1 release file

1.0.2

1 release file

1.0.1

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page