-
Notifications
You must be signed in to change notification settings - Fork 642
Load Testing
Ahmet Oğuz Mermerkaya edited this page Sep 6, 2021
·
19 revisions
Test environment has two parts: test server and SUT (system under test). We have two different setups for two different SUT.
Here we have only one Ant Media Server instance as SUT.
+-------------------+ +----------------------+
| | streaming | |
| | playing | |
| | <--------------> | |
| Test Server | | Ant Media Server |
| | | |
| | <--------------> | |
| | rest | |
+-------------------+ +----------------------+
- To prepare Ant Media Server, please look at here.
Here we have a cluster structure as SUT which contains one origin and N edge servers.
+--------------------+
| |
| |
| Ant Media Server |
+--------->+ |
| | (Origin) |
+-----------+ | | |
| | streaming | | |
| +---------------+ +--------------------+
| |
|Test Server| playing +------------------------------------------------+
| +<--------+ |
| | | Load Balancer |
| +---------+ |
+-----------+ rest +--+------------+---------------------+----------+
| | |
| | |
| | |
| | |
| | |
+-------------+--+ +------+---------+ +-----+----------+
| | | | | |
| | | | | |
|Ant Media Server| |Ant Media Server| ... |Ant Media Server|
| | | | | |
| (Edge-1) | | (Edge-2) | | (Edge-N) |
| | | | | |
| | | | | |
+----------------+ +----------------+ +----------------+
- To prepare Cluster, please look at here.
You can download WebRTC Load Test Tool
from your account at antmedia.io.
WebRTC Load Test Tool
is listed with Enterprise Edition under Download section of your Subscription.
Ant Media WebRTC Test Tool is a java project for testing Ant Media Server WebRTC capabilities.
- Ant Media WebRTC Test is compatible with Ant Media Server signaling protocol.
- Ant Media WebRTC Test has two modes: publisher and player. (-m flag determines the mode)
- Ant Media WebRTC Test has two options with UI or without UI. (-u flag determines the UI on/off)
- You can save received(in player mode) video.
- You can create load with -n flag as many as your machine CPU lets you.
It can be run from terminal with the following options.
./run.sh -f output.mp4 -m publisher -n 1 #publishes output.mp4 to the server with default name myStream
./run.sh -m player -n 100 -i stream1 -s 10.10.175.53 -u false #plays 100 viewers for default stream myStream
Flag Name Default Description
---- ---- ------- -----------
f File Name test.mp4 Source file* for publisher output file for player
s Server IP localhost server ip
q Security false true(wss) or false(ws)
l Log Level 3 0:VERBOSE,1:INFO,2:WARNING,3:ERROR,4:NONE
i Stream Id myStream id for stream
m Mode player publisher or player
u Show GUI true true or false
p Port 5080 websocket port number
v Verbose false true or false
n Count 1 Number of player/publisher connctions
k Kafka Broker null Kafka broker address with port
r Publish Loop false true or false
c Codec h264 h264 or VP8
d Data Channel false true or false
*File in mp4 format should have h264 encoded video and opus encoded audio
- Introduction
- Quick Start
- Installation
- Publishing Live Streams
- Playing Live Streams
- Conference Call
- Peer to Peer Call
- Adaptive Bitrate(Multi-Bitrate) Streaming
- Data Channel
- Video on Demand Streaming
- Simulcasting to Social Media Channels
- Clustering & Scaling
- Monitor Ant Media Servers with Apache Kafka and Grafana
- WebRTC SDKs
- Security
- Integration with your Project
- Advanced
- WebRTC Load Testing
- TURN Servers
- AWS Wavelength Deployment
- Multi-Tenancy Support
- Monitor Ant Media Server with Datadog
- Clustering in Alibaba
- Playlist
- Kubernetes
- Time based One Time Password
- Kubernetes Autoscaling
- Kubernetes Ingress
- How to Install Ant Media Server on EKS
- Release Tests
- Spaceport Volumetric Video
- WebRTC Viewers Info
- Webhook Authentication for Publishing Streams
- Recording Streams
- How to Update Ant Media Server with Cloudformation
- How to Install Ant Media Server on GKE
- Ant Media Server on Docker Swarm
- Developer Quick Start
- Recording HLS, MP4 and how to recover
- Re-streaming update
- Git Branching
- UML Diagrams