Giter Site home page Giter Site logo

excalit's Introduction

Excalit

License

This software is under the Apache2 License. See the LICENSE file.

About

Stress testing tool for web servers, written in elixir.

Will launch N concurrent connections, make a request, and measure how much time took to:

  • Open the connection
  • Receive the response

Sample run

$ mix excalit --url http://localhost:8080/ --concurrent 2

12:19:27.696 [info] Launching: 2
12:19:27.732 [info] 2: open: 15680 us
12:19:27.732 [info] 1: open: 15796 us
12:19:27.734 [info] 2: send: 2079 us
12:19:27.734 [info] 1: send: 2043 us
12:19:27.734 [info] 2: total: 19402 us
12:19:27.734 [info] 2: recv: 200|323|420 us
12:19:27.734 [info] 2: Finished
12:19:27.735 [info] 1: total: 20227 us
12:19:27.735 [info] 1: recv: 200|323|1172 us
12:19:27.735 [info] 1: Finished
12:19:27.735 [info] TCP connect time best: 2: 15680 us
12:19:27.736 [info] TCP connect time worst: 1: 15796 us
12:19:27.736 [info] TCP connect time 50% took: 15680 us
12:19:27.736 [info] TCP connect time 100% took: 15796 us
12:19:27.736 [info] Recv data best: 2: 420 us
12:19:27.736 [info] Recv data worst: 1: 1172 us
12:19:27.736 [info] Recv data 50% took: 420 us
12:19:27.737 [info] Recv data 100% took: 1172 us
12:19:27.737 [info] Total: 34847 us
  • The operations are measured in microseconds.
  • The "open: xxx us" line indicates how much it took to establish the tcp connection.
  • The "recv: .." line indicates (separated by |):
  • HTTP status code.
  • Body length.
  • Time it took to receive the data.

Defaults

  • GET method.
  • HTTP 1.0.
  • 1 connection.
  • 0 milliseconds of delay when spawning childs.

Options

  • --http11: HTTP version.
  • --method get|post|put|delete|head|options|connect: HTTP method to use.
  • --concurrent n: Number of concurrent connections.
  • --delay n: Delay in milliseconds between each child spawn.

excalit's People

Contributors

marcelog avatar

Watchers

 avatar James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.