Coder Social home page Coder Social logo

eipi1 / overload Goto Github PK

View Code? Open in Web Editor NEW
1.0 1.0 0.0 600 KB

A distributed load testing tool written in Rust

Home Page: https://eipi1.github.io/overload/

License: MIT License

Rust 97.49% Dockerfile 0.05% Lua 2.46%
load-testing cluster kubernetes distributed jmeter gatling load-generator performance-testing stress-test

overload's People

Contributors

eipi1 avatar

Watchers

 avatar

overload's Issues

Add step generator support

Add support for steps in the request generator.
Example

  "qps": {
    "Steps": [
      {
        "start": 0,
        "end": 10,
        "qps": 5
      },
      {
        "start": 11,
        "end": 20,
        "qps": 10
      }
    ]
  }```

Re-organize endpoints and other refactor

  • Endpoints are not quite of my liking, for example, file upload endpoint request-bin doesn't make sense
  • Get status by test id
  • Unify the naming - some places use job_id, and some are test_id
  • Re-organize filter modules

Set Request Priority

Currently all requests have equal priority based on uniform distribution.
It would be better if there's a way prioritize some request.

Test cases failing randomly

Standalone mode -

test filters::standalone_mode_tests::all_tests ... FAILED

failures:

---- filters::standalone_mode_tests::all_tests stdout ----
Response { status: 200, version: HTTP/1.1, headers: {"content-type": "application/json", "content-length": "69", "date": "Thu, 16 Feb 2023 17:44:40 GMT"}, body: Body(Streaming) }
body: b"{\"job_id\":\"85381f0f-b56a-4d0f-a0b4-6b4c6d2b6bbb\",\"status\":\"Starting\"}"
thread 'filters::standalone_mode_tests::all_tests' panicked at 'assertion failed: `(left == right)`
  left: `3`,
 right: `0`', overload/src/filters.rs:224:13
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace


failures:
    filters::standalone_mode_tests::all_tests

Cluster mode -

---- secondary::test::test_primary_listener stdout ----
thread 'tokio-runtime-worker' panicked at 'assertion failed: sender.is_some()', cluster-executor/src/secondary.rs:762:13
thread 'tokio-runtime-worker' panicked at 'assertion failed: sender.is_some()', cluster-executor/src/secondary.rs:750:13
thread 'secondary::test::test_primary_listener' panicked at 'assertion failed: handle1.await.is_ok()', cluster-executor/src/secondary.rs:770:9


failures:
    secondary::test::test_primary_listener

GET /test/status?offset=2 no response

Log:

Apr 25 12:40:16.864 TRACE overload: req: all_job: PagerOptions { offset: Some(2), limit: None }    
thread 'main' panicked at 'attempt to subtract with overflow', /path/to/overload/executor/mod.rs:369:12

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.