All Projects → TarsCloud → Tarsbenchmark

TarsCloud / Tarsbenchmark

Licence: bsd-3-clause
benchmark tool for tars/http service

Programming Languages

cpp
1120 projects

Projects that are alternatives of or similar to Tarsbenchmark

Quantum Benchmarks
benchmarking quantum circuit emulators for your daily research usage
Stars: ✭ 70 (+70.73%)
Mutual labels:  benchmark, high-performance
Actors
Evaluation of API and performance of different actor libraries
Stars: ✭ 125 (+204.88%)
Mutual labels:  benchmark, high-performance
Cista
Simple C++ Serialization & Reflection.
Stars: ✭ 535 (+1204.88%)
Mutual labels:  benchmark, high-performance
Stl.fusion
Get real-time UI updates in Blazor apps and 10-1000x faster API responses with a novel approach to distributed reactive computing. Fusion brings computed observables and automatic dependency tracking from Knockout.js/MobX/Vue to the next level by enabling a single dependency graph span multiple servers and clients, including Blazor apps running in browser.
Stars: ✭ 858 (+1992.68%)
Mutual labels:  high-performance
Bench Scripts
A compilation of Linux server benchmarking scripts.
Stars: ✭ 873 (+2029.27%)
Mutual labels:  benchmark
Rhashmap
Robin Hood hash map library
Stars: ✭ 33 (-19.51%)
Mutual labels:  high-performance
Geatpy
Evolutionary algorithm toolbox and framework with high performance for Python
Stars: ✭ 990 (+2314.63%)
Mutual labels:  high-performance
Sequelize Benchmark
Benchmarks for sequelize
Stars: ✭ 8 (-80.49%)
Mutual labels:  benchmark
Rtb
Benchmarking tool to stress real-time protocols
Stars: ✭ 35 (-14.63%)
Mutual labels:  benchmark
Zeus
A high performance, cross-platform Internet Communication Engine. Developed with native socket API. Aim at handling millions of concurrent connections.
Stars: ✭ 30 (-26.83%)
Mutual labels:  high-performance
Esnext Benchmarks
Benchmarks comparing ESNext features to their ES5 and various pre-processor equivalents
Stars: ✭ 28 (-31.71%)
Mutual labels:  benchmark
Sysbench Docker Hpe
Sysbench Dockerfiles and Scripts for VM and Container benchmarking MySQL
Stars: ✭ 14 (-65.85%)
Mutual labels:  benchmark
Serverless Faas Workbench
FunctionBench
Stars: ✭ 32 (-21.95%)
Mutual labels:  benchmark
Blis
BLAS-like Library Instantiation Software Framework
Stars: ✭ 859 (+1995.12%)
Mutual labels:  high-performance
Nvidia libs test
Tests and benchmarks for cudnn (and in the future, other nvidia libraries)
Stars: ✭ 36 (-12.2%)
Mutual labels:  benchmark
Cicada
🚀 Fast lightweight HTTP service framework.
Stars: ✭ 851 (+1975.61%)
Mutual labels:  high-performance
Awesome Scalability Toolbox
My opinionated list of products and tools used for high-scalability projects
Stars: ✭ 34 (-17.07%)
Mutual labels:  high-performance
Go Benchmark App
Application for HTTP benchmarking via different rules and configs
Stars: ✭ 21 (-48.78%)
Mutual labels:  benchmark
Koloboke
Java Collections till the last breadcrumb of memory and performance
Stars: ✭ 909 (+2117.07%)
Mutual labels:  high-performance
Asyncio
asyncio historical repository
Stars: ✭ 952 (+2221.95%)
Mutual labels:  high-performance

点我查看中文版

Introduction

tb(TarsBenchmark)It is a non-code benchmark tool specially tailored for tars service, with the following features:

  • High performance: 8-core machine TPS supports more than 20W/s;
  • Network compatibility: The network layer supports TCP and UDP protocol;
  • Protocol scalability: It supports http/tars service benchmark, open to third-protocol agreements
  • Perfect real-time monitor. Provide the number of TPS/Success Rate/Cost time within the cycle;

Framework

The tb is designed in a multi-process model. The main process is responsible for resource scheduling and display, and the benchmark process is responsible for network transmission and reception and statistics. The network layer can flexibly choose TCP or UDP; adopts a protocol factory to manage various service protocols, supports http/tars by default; the main process and the benchmark process exchange signals through control information, and the data interacts through the lock-free shared memory queue to achieve the lowest resource consumption. The main process periodically collects each The network statistics of the benchmark process are output to the console after a simple summary.

tb system

Usage

Sample

./tb -c 600 -s 6000 -D 192.168.31.1 -P 10505 -p tars -S tars.DemoServer.DemoObj -M test -C test.txt

Description

  -h                   help information
  -c                   number of connections
  -D                   target server address(ipv4)
  -P                   target server port
  -p                   service protocol(tars|http)
  -t(optional)         overtime time,default 3 second
  -T(optional)         network protocol,default tcp
  -I(optional)         continue time(by second),default 1h
  -i(optional)         view interval(by second),default 10s
  -s(optional)         maximum tps limit per target server
  -n(optional)         maximum process

See details in develop.md

Quick Start

The online benchmark service can be implemented with the latest version of TarsWeb. release steps are as follows:

./install.sh webhost token adminsip nodeip

Description:

webhost                  Host or ip:port on the TarsWeb management side
token                    Which can obtain the http://webhost/auth.html#/token through the management side
adminsip                 The IP address of the AdminServer deployment, it must be deployed at a single point
nodeip                   The IP address of the NodeServer deployment, it should be separated from the AdminServer

AdminServer is recommended to deploy together with tarsregistry, NodeServer is recommended to expand the capacity on the management side. The more machines deployed, the stronger the ability to support parallel benchmark.

Demo

demo

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].