All Projects → nginxinc → Rtapi

nginxinc / Rtapi

Licence: apache-2.0
Real time API latency analyzer - Create a PDF report and HDR histogram of your APIs

Programming Languages

go
31211 projects - #10 most used programming language

Projects that are alternatives of or similar to Rtapi

Tosdatabridge
A collection of resources for pulling real-time streaming data off of TDAmeritrade's ThinkOrSwim(TOS) platform; providing C, C++, Java and Python interfaces.
Stars: ✭ 229 (+116.04%)
Mutual labels:  api, real-time
Openscoring
REST web service for the true real-time scoring (<1 ms) of Scikit-Learn, R and Apache Spark models
Stars: ✭ 536 (+405.66%)
Mutual labels:  api, real-time
Horaires Ratp Api
Webservice pour les horaires et trafic RATP en temps réel
Stars: ✭ 232 (+118.87%)
Mutual labels:  api, real-time
Goaccess
GoAccess is a real-time web log analyzer and interactive viewer that runs in a terminal in *nix systems or through your browser.
Stars: ✭ 14,096 (+13198.11%)
Mutual labels:  real-time, nginx
Realtime Newsapi
Financial News Aggregator - Real Time & Query API for Financial News
Stars: ✭ 34 (-67.92%)
Mutual labels:  api, real-time
Orange
OpenResty/Nginx Gateway for API Monitoring and Management.
Stars: ✭ 2,208 (+1983.02%)
Mutual labels:  api, nginx
Apisix
The Cloud-Native API Gateway
Stars: ✭ 7,920 (+7371.7%)
Mutual labels:  api, nginx
Degiroapi
An unofficial API for the trading platform Degiro, with the ability to get real time data and historical data
Stars: ✭ 114 (+7.55%)
Mutual labels:  api, real-time
Parrot
Self-hosted Localization Management Platform built with Go and Angular
Stars: ✭ 967 (+812.26%)
Mutual labels:  api, nginx
Lor
a fast, minimalist web framework for lua based on OpenResty
Stars: ✭ 930 (+777.36%)
Mutual labels:  api, nginx
Realtime object detection
Plug and Play Real-Time Object Detection App with Tensorflow and OpenCV. No Bugs No Worries. Enjoy!
Stars: ✭ 260 (+145.28%)
Mutual labels:  api, real-time
Ngx dynamic limit req module
The ngx_dynamic_limit_req_module module is used to dynamically lock IP and release it periodically.
Stars: ✭ 57 (-46.23%)
Mutual labels:  real-time, nginx
Iex Api
The IEX API provides any individual or academic, public or private institution looking to develop applications that require stock market data to access near real-time quote and trade data for all stocks trading on IEX.
Stars: ✭ 683 (+544.34%)
Mutual labels:  api, real-time
Cve Api
Unofficial api for cve.mitre.org
Stars: ✭ 36 (-66.04%)
Mutual labels:  api, real-time
Gophergameserver
🏆 Feature packed, easy-to-use game server API for Go back-ends and Javascript clients. Tutorials and examples included!
Stars: ✭ 61 (-42.45%)
Mutual labels:  api, real-time
Docker Gunicorn Nginx
An experimental docker setup for Python / Gunicorn / Nginx stack
Stars: ✭ 103 (-2.83%)
Mutual labels:  nginx
Gaea
Gaea is a Gin-based web framework, reference gin https://github.com/gin-gonic/gin
Stars: ✭ 105 (-0.94%)
Mutual labels:  api
Graphql Subscriptions
📰 A small module that implements GraphQL subscriptions for Node.js
Stars: ✭ 1,390 (+1211.32%)
Mutual labels:  real-time
Tcases
A model-based test case generator
Stars: ✭ 103 (-2.83%)
Mutual labels:  api
Schema Registry
A CLI and Go client for Kafka Schema Registry
Stars: ✭ 105 (-0.94%)
Mutual labels:  api

Real Time API (RTAPI) Latency Testing Tool

This tool measures the latency response of a series of API endpoints and creates a PDF report with an HDR histogram of all API endpoints.

How to use

rtapi takes either a JSON/YAML file or a JSON string containing endpoint data and query parameters (optional), queries each endpoint using the query parameters (or default query values if no parameters have been specified), and outputs a PDF report containing all the endpoint query results plotted in an HDR histogram.

$ ./rtapi -h
NAME:
    Real time API latency analyzer - Create a PDF report and HDR histogram of Your APIs

USAGE:
    rtapi [global options] command [command options] [arguments...]

VERSION:
    v0.2.0

COMMANDS:
    help, h  Shows a list of commands or help for one command

GLOBAL OPTIONS:
    --file value, -f value    select a JSON or YAML file to load
    --data value, -d value    input API parameters directly as a JSON string
    --output value, -o value  output query results in easy to grasp PDF report
    --print, -p               output technical query results to terminal (default: false)
    --help, -h                show help (default: false)
    --version, -v             print the version (default: false)

Sample Input

JSON

[
  {
    "target": {
      "url": "https://www.example.com",
      "method": "POST",
      "body": "{\"id\":\"0\"}",
      "header": {
        "Content-Type": [
          "application/json"
        ]
      }
    },
    "query_parameters": {
      "threads": 2,
      "max_threads": 2,
      "connections": 12,
      "duration": "10s",
      "request_rate": 500
    }
  }
]

YAML

- target:
    url: https://www.example.com
    method: POST
    body: '{"id":"0"}'
    header:
      Content-Type:
        - application/json
  query_parameters:
    threads: 2
    max_threads: 2
    connections: 12
    duration: 10s
    request_rate: 500

Default Values

Only the target.url parameter is required. If no method is specified the default is "GET", while in the case of the body and headers these will simply remain empty during the benchmark.

The default query_parameters closely follow the default query parameters found in wrk2.

threads: 2
max_threads: 2
connections: 10
duration: 10s
request_rate: 500
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].