目前,我有一个流媒体专用服务器,您可以在下面看到服务器的详细信息:
硬盘:12TB 硬盘
内存:64GB
处理器:英特尔® 酷睿™ i7-6700 四核 Skylake 超线程
网络速度: 10GBPS 不限流量
操作系统:Ubuntu 16.04
另外,我正在使用 nginx:
nginx.conf
user www-data;
worker_processes 3;
pid /run/nginx.pid;
events {
worker_connections 2000;
# multi_accept on;
}
http {
sendfile on;
tcp_nopush on;
tcp_nodelay on;
keepalive_timeout 25;
types_hash_max_size 2048;
# server_tokens off;
limit_conn_zone $binary_remote_addr zone=addr:10m;
limit_req_zone $binary_remote_addr zone=one:10m rate=3r/s;
limit_rate_after 3m;
limit_rate 2m;
include /etc/nginx/mime.types;
default_type application/octet-stream;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;
access_log off;
gzip on;
gzip_disable "msie6";
include /etc/nginx/conf.d/*.conf;
include /etc/nginx/sites-enabled/*;
}
但是,当我的专用服务器达到~1500 同时连接,每个观看视频的人都会遇到视频峰值/滞后。
我该如何解决这个问题?
这是我的 I/O 使用情况:
PID PRIO USER DISK READ DISK WRITE SWAPIN IO> COMMAND
7855 be/4 www-data 30.30 G 92.00 K 0.00 % 86.06 % nginx: worker process
7853 be/4 www-data 33.22 G 76.00 K 0.00 % 85.12 % nginx: worker process
7852 be/4 www-data 35.39 G 44.00 K 0.00 % 84.01 % nginx: worker process
335 be/3 root 0.00 B 684.00 K 0.00 % 15.13 % [jbd2/dm-0-8]
378 be/3 root 19.93 M 6.13 M 0.00 % 2.23 % systemd-journald
7811 be/4 root 0.00 B 0.00 B 0.00 % 0.57 % [kworker/u16:0-ixgbe]
674 be/0 root 340.00 K 0.00 B 0.00 % 0.44 % [loop1]
7812 be/4 root 0.00 B 0.00 B 0.00 % 0.29 % [kworker/u16:2-events_unbound]
5471 be/4 root 0.00 B 24.00 K 0.00 % 0.14 % [kworker/3:3-events_long]
5550 be/4 root 0.00 B 24.00 K 0.00 % 0.13 % [kworker/5:3-events_long]
5513 be/4 root 0.00 B 24.00 K 0.00 % 0.12 % [kworker/0:1-events_long]
67 be/4 root 0.00 B 0.00 B 0.00 % 0.11 % [kcompactd0]
7061 be/4 root 4.00 K 0.00 B 0.00 % 0.07 % [kworker/u16:3-events_unbound]
866 be/4 syslog 0.00 B 128.00 K 0.00 % 0.04 % rsyslogd -n
7937 be/4 root 0.00 B 0.00 B 0.00 % 0.06 % [kworker/u16:1-events_unbound]
940 be/4 root 26.00 K 0.00 B 0.00 % 0.02 % snapd
5569 be/0 root 0.00 B 12.00 K 0.00 % 0.00 % atop -R -w /var/log/atop/atop_20190413 600
8059 be/4 root 0.00 B 4.00 K 0.00 % 0.00 % sshd: root [priv]
据我所知,问题与I/O 使用情况,我该如何减少这种使用并提高我的服务器性能?
谢谢
答案1
关于输出,是的,I/O 是瓶颈,对于任何流媒体应用程序,您需要更好的磁盘吞吐量,请根据您要提供的文件类型/大小使用具有适当块大小的 SSD。我建议对磁盘进行磁盘基准测试,您也可以使用第三方或日在 Linux 或其他工具中也可以使用命令。祝你好运。希望这会有所帮助。