
nginx
sunxiaopengsun
这个作者很懒,什么都没留下…
展开
-
nginx平台初探(100%)¶
初探nginx架构(100%)众所周知,nginx性能高,而nginx的高性能与其架构是分不开的。那么nginx究竟是怎么样的呢?这一节我们先来初识一下nginx框架吧。nginx在启动后,在unix系统中会以daemon的方式在后台运行,后台进程包含一个master进程和多个worker进程。我们也可以手动地关掉后台模式,让nginx在前台运行,并且通过配置让nginx取消master进原创 2017-02-21 13:06:49 · 9317 阅读 · 0 评论 -
如何获取域名(网址)对应的IP地址
域名(Domain Name),是由一串用点分隔的名字组成的Internet上某一台计算机或计算机组的名称,用于在数据传输时标识计算机的电子方位。通俗点讲,域名就是我们平时进行网络浏览时所用到的网址(如:www.baidu.com)。域名只是为了方便阅读和记忆,计算机并不能直接处理,还需要通过域名服务器(DNS)把域名解析为对应的IP地址才能进行网络访问。因此直接在网络浏览器的地址栏中输入相应的I原创 2017-06-08 18:20:02 · 23596 阅读 · 1 评论 -
nginx反向代理TCP,取RTMP流
nginx反向代理TCP,取RTMP流一、说明 nginx默认只支持HTTP反向代理,如果需要支持TCP反向代理需添加tcp代理模块:nginx_tcp_proxy_module。二、原料 1.nginx_tcp_proxy_module 下载地址: wget https://github.com/yaoweibin/nginx_tcp_proxy_module/a原创 2017-06-29 16:28:39 · 8784 阅读 · 1 评论 -
nginx模块_使用gdb调试nginx源码
工欲善其事必先利其器,如何使用调试工具gdb一步步调试nginx是了解nginx的重要手段。ps:本文的目标人群是像我这样初接触Unix编程的同学,如果有什么地方错误请指正。熟悉gdb的使用这里就不说了,谷歌一搜一堆,这里推荐一篇文章:GDB 命令详细解释请重点看一下step,run,break,list,info,continue命令下载nginx源码这里使用nginx-原创 2017-06-10 08:59:47 · 488 阅读 · 0 评论 -
使用GDB调试nginx
gdb是Linux上调试应用程序的首选。在进行nginx的调试过程中,首先需要修改Makefile文件。vi objs/Makefile#增加 -O0 和 -g 选项; -O0代表不进行优化,-g代表调试模式CFLAGS = -pipe -W -Wall -Wpointer-arith -Wno-unused-parameter -g -O0123原创 2017-06-11 16:08:25 · 632 阅读 · 0 评论 -
nginx配置让任何文件在浏览器中显示文本text/plain
例如配置1.plist类型的文件,让他在浏览器中直接打开,而不是下载。方法一:修改mime.types,添加plist扩展名为text/plain类型,直接显示文本。在文件中添加如下内容text/plain plist;修改好mime.types类型后,直接重启nginx即可。这个方法修改后影响所有n原创 2017-06-12 09:45:36 · 16052 阅读 · 0 评论 -
nginx问题定位之监控进程异常退出
ginx在运行过程中是否稳定,是否有异常退出过?这里总结几项平时会用到的小技巧。1. 在error.log中查看是否有signal项,如果有,看看signal是多少。比如,这是一个异常退出的情况:$grep signal error.log2012/12/24 16:39:56 [alert] 13661#0: worker process 13666 exited on原创 2017-06-12 11:10:35 · 2683 阅读 · 0 评论 -
http的keep-alive和tcp的keepalive区别
1、HTTP Keep-Alive在http早期,每个http请求都要求打开一个tpc socket连接,并且使用一次之后就断开这个tcp连接。使用keep-alive可以改善这种状态,即在一次TCP连接中可以持续发送多份数据而不会断开连接。通过使用keep-alive机制,可以减少tcp连接建立次数,也意味着可以减少TIME_WAIT状态连接,以此提高性能和提高httpd服务器的吞吐率(原创 2017-06-12 17:35:17 · 406 阅读 · 0 评论 -
nginx指令之——tcp_nodelay
指令tcp_nodelay作用于socket参数TCP_NODELAY。在这之前,我们先说说nagle缓存算法,有些应用程序在网络通讯的时候会发送很少的字节,比如说一个字节,那么再加TCP协议本身,实际上发的要41个字节,这样的效率是很低的。这时候nagle算法就应运而生了,它将要发送的数据存放在缓存里,当积累到一定量或一定时间,再将它们发送出去。这里TCP_NODELAY就是nagle启原创 2017-06-12 17:55:22 · 2460 阅读 · 0 评论 -
音频AAC编码的RTMP直播
RTMP直播,音频编码采用AAC时,需要把帧头的数据去掉。第一个数据包,发送4个字节,前面两个是0xAF、0x00,我看有文章写的是这个0xAF的A代表的是AAC,说明如下:0 = Linear PCM, platform endian1 = ADPCM2 = MP33 = Linear PCM, little endian4 = Nellymoser 16 kHz原创 2017-06-14 10:46:26 · 899 阅读 · 0 评论 -
nginx centos下安装遇到的问题总结
1. 1, 编译环境搭建。sudo apt-get install g++sudo apt-get -y install autoconf automake build-essential libass-dev libgpac-dev libsdl1.2-dev libtheora-dev libtool libvdpau-dev libvorbis-dev libx11-dev libx原创 2017-08-20 21:49:04 · 1214 阅读 · 0 评论 -
centos下安装nginx
1.安装nginx1.解压安装包分别解压nginx,pcre,openss,nginx-rtmp-module,nginx_mod_h264_streaming到/root/work/nginx_download目录下,进入nginx解压后的目录nginx-1.6.2 zlib 为了gzip压缩http://zlib.net/zlib-1.2.8.tar.gztar -zx原创 2017-01-03 17:27:40 · 292 阅读 · 0 评论 -
EasyStream(流汇聚,转发工具)
EasyStream介绍 EasyStream SDK使用 EasyStream系列1之rtsp转rtmp EasyStream系列2之rtmp转rtsp EasyStream系列3之rtsp转rtsp EasyStream系列4之rtmp转rtmp EasyStream系列5之本地文件转rtsp EasyStream系列6之本地文件转rtmp Ea原创 2017-07-02 11:10:21 · 4664 阅读 · 0 评论 -
EasyStream系列8之录制rtmp流
EasyStream介绍 EasyStream SDK使用 EasyStream系列1之rtsp转rtmp EasyStream系列2之rtmp转rtsp EasyStream系列3之rtsp转rtsp EasyStream系列4之rtmp转rtmp EasyStream系列5之本地文件转rtsp EasyStream系列6之本地文件转rtmp Ea原创 2017-08-17 15:32:28 · 596 阅读 · 0 评论 -
EasyStream系列10之directshow转rtmp
EasyStream介绍 EasyStream SDK使用 EasyStream系列1之rtsp转rtmp EasyStream系列2之rtmp转rtsp EasyStream系列3之rtsp转rtsp EasyStream系列4之rtmp转rtmp EasyStream系列5之本地文件转rtsp EasyStream系列6之本地文件转rtmp Ea原创 2017-08-17 15:36:27 · 552 阅读 · 0 评论 -
rtmpdump编译
1.创建终极目录mkdir rtmpobj1安装 OpenSSLcd /openssl-1.0.1fCC=arm-hisiv300-linux-gcc ./config no-asm shared --prefix=../rtmpobjmake2.安装zlibcd zlib-1.2.8/CC=arm-hisiv300-linux-gcc ./configure --prefix=...原创 2018-05-10 15:50:08 · 1437 阅读 · 0 评论 -
nginx.conf中关于nginx-rtmp-module配置指令详解
译序:截至 Jul 8th,2013 官方公布的最新 Nginx RTMP 模块 nginx-rtmp-module 指令详解。指令Corertmp语法:rtmp { ... }上下文:根描述:保存所有 RTMP 配置的块。server语法:server { ... }上下文:rtmp描述:声明一个 RTMP 实例。rtmp { server { }}listen语法:listen (addr...转载 2018-05-11 17:54:58 · 1537 阅读 · 0 评论 -
Nginx上的第一个HelloWorld
前言(废话):刚刚看完 深入理解nginx模块开发与架构解析的http处理模块,想想先写一个http处理模块的hellowrold,也算是入门了吧。安装完nginx就可以搞了,安装配置请参考Nginx安装部署。第一步:编写config文件在nginx源代码根目录下创建文件夹ngx_http_hello_world_module文件夹,进入该目录,创建文件配置文件config原创 2017-06-07 22:03:31 · 360 阅读 · 0 评论 -
Nginx反向代理和负载均衡部署指南
1. 安装1) 从Nginx官网下载页面(http://nginx.org/en/download.html)下载Nginx最新版本(目前是1.5.13版本)安装包;2) 解压后复制到部署目录。 2. 启动和停止NginxNginx目前只支持命令行操作,操作前先进入Dos命令环境,并进入Nginx部原创 2017-06-16 18:25:32 · 260 阅读 · 0 评论 -
nginx 点播mp4方法
1.配置文件配置文件中rmtp部分: application vod { play html; } 配置文件中http部分: location ~ .mp4$ { root html; mp4;原创 2017-05-20 13:08:35 · 7018 阅读 · 0 评论 -
服务器TIME_WAIT和CLOSE_WAIT详解和解决办法
昨天解决了一个HttpClient调用错误导致的服务器异常,具体过程如下:http://blog.youkuaiyun.com/shootyou/article/details/6615051里头的分析过程有提到,通过查看服务器网络状态检测到服务器有大量的CLOSE_WAIT的状态。 在服务器的日常维护过程中,会经常用到下面的命令:netstat -n | aw原创 2017-02-24 14:51:29 · 397 阅读 · 0 评论 -
linux下TCP keepalive 属性设置
Linux操作系统下TCP keepalive属性查看不容错过的IBM集群技术资源汇总 <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> <iframe name="google_ads_frame" src="http://pagead2原创 2017-02-24 15:37:24 · 12363 阅读 · 0 评论 -
tcp参数详解之tcp_fin_timeout
tcp_fin_timeout :INTEGER默认值是 60对于本端断开的socket连接,TCP保持在FIN_WAIT_2状态的时间。对方可能会断开连接或一直不结束连接或不可预料的进程死亡。默认值为 60 秒。过去在2.2版本的内核中是 180 秒。您可以设置该值﹐但需要注意﹐如果您的机器为负载很重的web服务器﹐您可能要冒内存被大量无效数据报填满的风险﹐FIN-WAIT-2 sock原创 2017-02-24 16:05:20 · 1420 阅读 · 1 评论 -
tcp窗口滑动以及拥塞控制
TCP协议作为一个可靠的面向流的传输协议,其可靠性和流量控制由滑动窗口协议保证,而拥塞控制则由控制窗口结合一系列的控制算法实现。一、滑动窗口协议 关于这部分自己不晓得怎么叙述才好,因为理解的部分更多,下面就用自己的理解来介绍下TCP的精髓:滑动窗口协议。 所谓滑动窗口协议,自己理解有两点:1. “窗口”对应的是一段可以被发送者发送的字节序列,其连续的范围称之为“窗口”;原创 2017-02-24 16:15:14 · 471 阅读 · 0 评论 -
在Windows下搭建基于nginx的视频直播和点播系统
一、软件准备由于nginx原生是为linux服务的,因此官方并没有编译好的windows版本可以下载,要在windows上使用nginx,要么下载源码进行编译,要么使用其他人已经编译好的文件。而要让nginx支持视频直播和点播,还需要第三方的nginx模块:nginx-rtmp-module所幸,已经有大神做好了nginx的编译,而且集成了很多nginx模块,其中就原创 2017-03-08 11:13:38 · 1189 阅读 · 0 评论 -
windows下搭建基于nginx的rtmp服务器
Windows机器配置:Windows7旗舰版 64位Intel(R) Core(TM)i5-2520 CPU @2.50GHz 2.50 GHz内存: 4GB1. 下载 nginx 1.7.11.3 Gryphon下载链接: http://nginx-win.ecsds.eu/download/nginx 1.7.11.3 Gryphon.zip下载完成后解压;原创 2017-03-08 11:15:08 · 967 阅读 · 0 评论 -
配置Nginx多核CPU,worker_cpu_affinity使用方法和范例
Nginx默认没有开启利用多核CPU,我们可以通过增加worker_cpu_affinity配置参数来充分利用多核CPU。CPU是任务处理,计算最关键的资源,CPU核越多,性能就越好。配置Nginx多核CPU,worker_cpu_affinity使用方法和范例1. 2核CPU,开启2个进程worker_processes 2;worker_cpu_affinity 0原创 2017-03-08 11:45:32 · 628 阅读 · 0 评论 -
intptr_t 其实不是指针类型 .
最近在看nginx源码,看到有一个类型intptr_t,没有见过,google了一下,有人说是指针类型,但是看nginx源码中对该类型变量的使用,好像不是指针类型。[cpp] view plaincopystatic ngx_int_t 667 ngx_get_options(int argc, char *const *argv) 668 { 669原创 2017-02-25 16:12:07 · 376 阅读 · 0 评论 -
Nginx RTMP 模块 nginx-rtmp-module 指令详解
译序:截至 Jul 8th,2013 官方公布的最新 Nginx RTMP 模块 nginx-rtmp-module 指令详解。指令Corertmp语法:rtmp { ... }上下文:根描述:保存所有 RTMP 配置的块。server语法:server { ... }上下文:rtmp描述:声明一个 RTMP 实例。rtmp { server {原创 2017-03-08 16:48:11 · 405 阅读 · 0 评论 -
正向代理与反向代理的区别【Nginx读书笔记】
正向代理的概念正向代理,也就是传说中的代理,他的工作原理就像一个跳板,简单的说,我是一个用户,我访问不了某网站,但是我能访问一个代理服务器这个代理服务器呢,他能访问那个我不能访问的网站于是我先连上代理服务器,告诉他我需要那个无法访问网站的内容代理服务器去取回来,然后返回给我从网站的角度,只在代理服务器来取内容的时候有一次记录有时候并不知道是用户的请求,也隐藏原创 2017-03-12 19:20:42 · 393 阅读 · 0 评论 -
配置ngnix实现HLS m3u8点播
一、首先保证nginx能正常运行: 这个就是因为前面我们把nginx的目录加到了Path中,然而nginx启动时各种路径都是以当前工作目录为起始点的,这就导致了系统去“C:\Users\[UserName]/conf/nginx.conf”这个地方去寻找配置文件而不是正常的“D:\nginx-1.3.9/conf/nginx.conf”。看来不能轻易原创 2017-04-07 14:28:28 · 4196 阅读 · 0 评论 -
HLS(HTTP Live Streaming)协议之m3u8文件生成方式
HLS(HTTP Live Streaming)是Apple的动态码率自适应技术。主要用于PC和Apple终端的音视频服务。包括一个m3u(8)的索引文件,TS媒体分片文件和key加密串文件。 HLS的关键其实是生成m3u8索引文件和TS媒体分片,下面我将通过以下几个步骤讲述m3u8及TS媒体分片的生成:第一步---获取TS文件: TS(Transport原创 2017-04-08 08:23:19 · 5224 阅读 · 0 评论 -
关于直播,所有的技术细节都在这里了!
网络视频直播存在已有很长一段时间,随着移动上下行带宽提升及资费的下调,视频直播被赋予了更多娱乐和社交的属性,人们享受随时随地进行直播和观看,直播的打开时间和延迟变成了影响产品功能发展重要指标。加速会注:本文由 著名直播平台都在使用的云计算公司 UCloud 流媒体研发团队撰写!网络视频直播存在已有很长一段时间,随着移动上下行带宽提升及资费的下调,视频直播被赋予了更多娱乐原创 2017-04-10 09:30:00 · 2435 阅读 · 1 评论 -
nginx 直播进程数问题(待解决)
在nginx进行rtmp直播时,发现进程数设置〉1的时候,通过ffplay播放推送到nginx上的rtmp流总有时播放失败,没有音视频数据。通过stat模块统计发现,流时有时断所以目前只能将进程数设置成1。原创 2017-03-08 16:46:03 · 1396 阅读 · 0 评论 -
在Windows下搭建基于nginx的视频直播和点播系统
一、软件准备由于nginx原生是为linux服务的,因此官方并没有编译好的windows版本可以下载,要在windows上使用nginx,要么下载源码进行编译,要么使用其他人已经编译好的文件。而要让nginx支持视频直播和点播,还需要第三方的nginx模块:nginx-rtmp-module所幸,已经有大神做好了nginx的编译,而且集成了很多nginx模块,其中就原创 2017-04-25 14:38:04 · 556 阅读 · 0 评论 -
使用 nginx 和 rtmp 插件搭建视频直播和点播服务器
使用 nginx 和 rtmp 模块 ,可以很容易地搭建一个视频直播和点播服务器出来。首先,看一下最经典的参考文献: How to set up your own private RTMP server using nginx1. 安装 nginx 和 rtmp 模块有关 nginx 的编译和安装比较简单,这里就不介绍了,看参考文献。这里提示以下几点:(1) 安装好原创 2017-05-18 12:28:10 · 871 阅读 · 0 评论 -
嵌入式hi3516-hi3518海思平台移植nginx-1.12.2
参考:http://blog.youkuaiyun.com/fish43237/article/details/40515897正文: 先编译了linux下的nginx没有太大的问题。但是因为 nginx 对交叉编译的支持不太好。所以如果想 nginx 移植到其它环境中,会出现比较多的问题。本文 编译的是 最新的 stalble 版本,nginx-1.12.2, 目标是海思的hi3518, 编译...原创 2019-01-31 18:45:27 · 1602 阅读 · 1 评论