Last active
February 13, 2019 09:40
-
-
Save tuan3w/3230988b23f13cd30ce59f7a91321c44 to your computer and use it in GitHub Desktop.
Experiment with nginx-http-flv-module
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
worker_processes auto; #should be 1 for Windows, for it doesn't support Unix domain socket | |
worker_rlimit_nofile 100000; | |
error_log logs/error.log error; | |
#if the module is compiled as a dynamic module and features relevant | |
#to RTMP are needed, the command below MUST be specified and MUST be | |
#located before events directive, otherwise the module won't be loaded | |
#or will be loaded unsuccessfully when NGINX is started | |
#load_module modules/ngx_rtmp_module.so; | |
events { | |
worker_connections 10240; | |
accept_mutex off; | |
use epoll; | |
} | |
#thread_pool default threads=6 max_queue=65536; | |
http { | |
include mime.types; | |
default_type application/octet-stream; | |
sendfile on; | |
sendfile_max_chunk 512k; | |
#aio threads=default; | |
#aio threads=default; | |
#tcp_nopush on; | |
# don't buffer data sent, good for small data bursts in real time | |
#tcp_nodelay on; | |
keepalive_timeout 65; | |
server { | |
listen 8080 reuseport; | |
location / { | |
root /var/www; | |
index index.html index.htm; | |
} | |
error_page 500 502 503 504 /50x.html; | |
location = /50x.html { | |
root html; | |
} | |
location /live { | |
flv_live on; #open flv live streaming (subscribe) | |
#aio on; | |
chunked_transfer_encoding on; #open 'Transfer-Encoding: chunked' response | |
add_header 'Access-Control-Allow-Origin' '*'; #add additional HTTP header | |
add_header 'Access-Control-Allow-Credentials' 'true'; #add additional HTTP header | |
} | |
location /stat { | |
#configuration of push & pull status | |
rtmp_stat all; | |
rtmp_stat_stylesheet stat.xsl; | |
} | |
location /stat.xsl { | |
root /var/www/rtmp; #specify in where stat.xsl located | |
} | |
location /hls { | |
# Serve HLS fragments | |
# Disable cache | |
#add_header Cache-Control no-cache; | |
# CORS setup | |
add_header 'Access-Control-Allow-Origin' '*' always; | |
add_header 'Access-Control-Expose-Headers' 'Content-Length'; | |
if ($request_method = 'OPTIONS') { | |
add_header 'Access-Control-Allow-Origin' '*'; | |
add_header 'Access-Control-Max-Age' 1728000; | |
add_header 'Content-Type' 'text/plain charset=UTF-8'; | |
add_header 'Content-Length' 0; | |
return 204; | |
} | |
types { | |
application/vnd.apple.mpegurl m3u8; | |
video/mp2t ts; | |
} | |
root /var/www; | |
add_header Cache-Control no-cache; | |
} | |
} | |
} | |
rtmp_auto_push on; | |
rtmp_auto_push_reconnect 1s; | |
rtmp_socket_dir /var/www/sockets; | |
rtmp { | |
out_queue 4096; | |
out_cork 8; | |
max_streams 64; | |
server { | |
listen 1935; | |
application myapp { | |
live on; | |
gop_cache on; #open GOP cache for low latency | |
} | |
} | |
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
version: "3" | |
services: | |
benchmark: | |
image: williamyeh/wrk | |
command: "-d 5m -t10 -c500 \"http://SERVER_ADDR:8080/live?app=myapp&stream=test\"" | |
deploy: | |
mode: global | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Build and install
stress server