All Projects → Fitblip → Wsstat

Fitblip / Wsstat

Licence: mit
Websocket stress testing made beautiful

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Wsstat

Walle Web
walle - 瓦力 Devops开源项目代码部署平台
Stars: ✭ 11,277 (+7786.01%)
Mutual labels:  devops
Learn Devops
🚧 Learn the craft of "DevOps" (Developer Operations) to Deploy your App and Monitor it so it stays "Up"!
Stars: ✭ 139 (-2.8%)
Mutual labels:  devops
Serverless Dynamodb Autoscaling
Serverless Plugin for Amazon DynamoDB Auto Scaling configuration.
Stars: ✭ 142 (-0.7%)
Mutual labels:  scaling
Devopsfactors
The DevOps Factors
Stars: ✭ 134 (-6.29%)
Mutual labels:  devops
Djangoweb
基于Django的运维平台
Stars: ✭ 137 (-4.2%)
Mutual labels:  devops
Exoframe Server
Exoframe is a self-hosted tool that allows simple one-command deployments using Docker
Stars: ✭ 139 (-2.8%)
Mutual labels:  devops
Tacks
Real-time multiplayer sailing game, in your browser
Stars: ✭ 134 (-6.29%)
Mutual labels:  websockets
Operos
Linux-based operating system that brings hyperscaler-grade infrastructure automation to organizations of all sizes
Stars: ✭ 144 (+0.7%)
Mutual labels:  devops
Superview
A small program that takes a 4:3 aspect ratio video file, and transforms it to a 16:9 video using the GoPro SuperView method
Stars: ✭ 137 (-4.2%)
Mutual labels:  scaling
Puppet Retrospec
The only tool you need to generate puppet code, tests, modules, facts, types, providers, data and everything else.
Stars: ✭ 141 (-1.4%)
Mutual labels:  devops
Osc Js
OSC library for Node.js, Electron, Chrome Apps, Webpages or any other JS application. It comes with a customizable Plugin API for WebSocket, UDP or bridge networking
Stars: ✭ 135 (-5.59%)
Mutual labels:  websockets
Azure Signalr
Azure SignalR Service SDK for .NET
Stars: ✭ 137 (-4.2%)
Mutual labels:  websockets
Apisix Ingress Controller
ingress controller for K8s
Stars: ✭ 139 (-2.8%)
Mutual labels:  devops
Actix Web
Actix Web is a powerful, pragmatic, and extremely fast web framework for Rust.
Stars: ✭ 12,723 (+8797.2%)
Mutual labels:  websockets
Vagrant Digitalocean
💧 A Vagrant provider plugin that manages DigitalOcean droplets.
Stars: ✭ 1,730 (+1109.79%)
Mutual labels:  devops
Bolt Js
A framework to build Slack apps using JavaScript
Stars: ✭ 1,971 (+1278.32%)
Mutual labels:  websockets
Graphqlws
Implementation of the GraphQL over WebSocket protocol in Go.
Stars: ✭ 139 (-2.8%)
Mutual labels:  websockets
Carrot
Distributed WebSocket and HTTP Load Testing Framework in Go
Stars: ✭ 143 (+0%)
Mutual labels:  websockets
Multi Arch Images
Support for multi-platform architecture Docker images using buildx.
Stars: ✭ 143 (+0%)
Mutual labels:  devops
React Native Signalr
Use SignalR with React Native
Stars: ✭ 141 (-1.4%)
Mutual labels:  websockets

wsstat

Websocket stress testing made beautiful

Build Status Coverage Status PyPi PyPi PyPi

Hello!

This repository holds WSStat, a websocket monitoring and visualization tool written in Python 3.3+, using the great AsyncIO, Websocket, and Urwid libraries 😎 .

It aims to make diagnosing problems and understanding your websocket infrastructure easy and beautiful.

There are still a few edges and whatnot since it's fairly new, and some functionality doesn't exist (yet), but that's where I'm hoping the community can help.

I'm actively looking for feedback

The core of WSStat was written to be modular with extensibility in mind. Want a web API to gather statistics while it runs? How about a websocket server that pushes statistics from multiple workers to one place? Threshold based alerting? Slack integration? File a ticket and we'll kick it around!

It should go without saying, but pull requests are absolutely welcome!

Now, a demo

demo

When you pass the --demo flag to WSStat, it will spin up an asynchronous websocket server on port 65432 point the websocket monitors to that server, allowing you to see functionality with a real websocket server.

Installation

Install from pip - pip install wsstat

Note: if you have python 2 and 3 installed on the same system, you have to use pip3 install wsstat!

The installation should be 100% straight forward and work fine. If that's not the case, please file a ticket!

Please note: WSStat currently only works on Python >= 3.3, and won't install on python 2.7, which is a known limitation.

Usage

Using wsstat is pretty straight forward, and it only has a few knobs (for now). If you want to try wsstat out and don't have a websocket infrastructure handy, you can just pass in --demo to have wsstat set up a server for you!

Other than that, you can adjust the total number of connected clients with -n, the number of simultaneous sockets trying to connect at once with -c, or pass in an arbitrary header (for things like authentication) with -H.

$ wsstat -h
usage: wsstat [-h] [-n TOTAL_CONNECTIONS] [-c MAX_CONNECTING_SOCKETS]
              [-H HEADER] [--demo] [-i]
              [websocket_url]

positional arguments:
  websocket_url         The websocket URL to hit

optional arguments:
  -h, --help            show this help message and exit
  -n TOTAL_CONNECTIONS, --num-clients TOTAL_CONNECTIONS
                        Number of clients to connect - default 250
  -c MAX_CONNECTING_SOCKETS, --max-connects MAX_CONNECTING_SOCKETS
                        Number of connections attempted simultaneously -
                        default 15
  -H HEADER, --header HEADER
                        Pass a custom header with each websocket connection
  --demo                Start a demo websocket server and point wsstat at it
  -i, --insecure        Don't validate SSL certificates on websocket servers
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].