自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

幽雨雨幽

专注等于充实

  • 博客(22)
  • 资源 (5)
  • 收藏
  • 关注

转载 Nginx-rtmp直播之业务流程分析--比较详细

1. 综述1.1 直播原理使用 obs 向 nginx 推送一个直播流,该直播流经 nginx-rtmp 的 ngx_rtmp_live_module 模块转发给 application live 应用,然后使用 vlc 连接 live,播放该直播流。1.2 nginx.conf# 创建的子进程数worker_processes 1;error_log stderr ...

2018-11-28 16:51:20 4928

转载 EPOLL事件之EPOLLRDHUP

在对系统问题进行排查时,我发现了一个奇怪的现象:明明是对方断开连接,系统却报告一个查询失败的错误,但从用户角度来看请求的结果正常返回,没有任何问题。对这个现象深入分析后发现,这是一个基于epoll的连接池实现上的问题,或者说是特性。首先解释一下导致这个现象的原因。在使用epoll时,对端正常断开连接(调用close()),在服务器端会触发一个epoll事件。在低于2.6.17版本的内核...

2018-11-28 10:27:28 1468

转载 Nginx:HTTP框架是如何介入请求

考资料 <深入理解Nginx>(陶辉)            Nginx事件模块博客地址:http://www.cnblogs.com/runnyu/p/4914698.html Nginx是一个事件驱动构架的Web服务器,在上次的博客中我们可以看到Nginx是如何驱动事件的处理的。本次将介绍HTTP框架是如何介入跟处理HTTP网络事件的。因为书上的思路已经足够清晰而且...

2018-11-20 17:15:07 357

转载 Linux下进程间通讯方式 - UNIX Domain Socket

概述Linux下进程通讯方式有很多,比较典型的有套接字,平时比较常用的套接字是基于TCP/IP协议的,适用于两台不同主机上两个进程间通信, 通信之前需要指定IP地址. 但是如果同一台主机上两个进程间通信用套接字,还需要指定ip地址,有点过于繁琐. 这个时候就需要用到UNIX Domain Socket, 简称UDS, UDS的优势:UDS传输不需要经过网络协议栈,不需要打包拆包等操作,只是...

2018-11-20 11:00:15 1530

转载 Nginx HTTP之请求行解析函数ngx_http_parse_request_line

Nginx的HTTP模块中使用ngx_http_parse_request_line函数来对读取的请求行进行解析,HTTP请求行的格式不是很复杂,但是要注意HTTP 0.9与1.0、1.1之间的区别;另外,作为Nginx的第一个版本,里面支持的请求方法也只有GET、POST和HEAD。/* http/ngx_http_parse.c */ /* 解析HTTP请求行 * param r:...

2018-11-16 11:27:49 1705

转载 Nginx源码阅读(ngx_http_process_request_line)

ngx_http_process_request_line()static voidngx_http_process_request_line(ngx_event_t *rev){    ssize_t              n;    ngx_int_t            rc, rv;    ngx_str_t            host;    ngx_conn...

2018-11-16 10:51:05 484

转载 nginx的请求接收流程(二)

在ngx_http_process_request_line函数中,解析完请求行之后,如果请求行的uri里面包含了域名部分,则将其保持在请求结构的headers_in成员的server字段,headers_in用来保存所有请求头,它的类型为ngx_http_headers_in_t:typedef struct {    ngx_list_t                        ...

2018-11-16 10:48:06 738

转载 nginx监听事件流程

在前面的几篇文章中已经分析了master进程、work进程的初始化流程。但一直没有分析监听socket的创建流程,nginx服务器只有在创建socket, 绑定socet,监听socket执行完成后,才能处理来自客户端的连接。ngx_cycle_t结构中有一个listening成员,存放的就是所有监听socket。接下来首先分析socket内部结构的维护,不同域名的管理,然后分析什么时候把监听so...

2018-11-15 16:48:44 3073 1

转载 nginx学习十 ngx_cycle_t 、ngx_connection_t 和ngx_listening_t

最近在开始看nginx的事件模块,经常看到ngx_cycle_t、ngx_connection_t和ngx_listening_t这三个结构体,刚开始没在意,看到了就重新上网变量的意思,后来觉得不弄懂这三个结构体或者不清出其中变量的意义实在是无法看下去,因为有很多函数都涉及这三个结构体。因为ngx_listening_t存储监听有关的信息,ngx_connection_t存储连接有关的信息和读写事...

2018-11-15 14:30:34 501

转载 Nginx基本数据结构之ngx_hash_keys_arrays_t

大家看到在构建一个ngx_hash_wildcard_t的时候,需要对通配符的哪些key进行预处理。这个处理起来比较麻烦。而当有一组key,这些里面既有无通配符的key,也有包含通配符的key的时候。我们就需要构建三个hash表,一个包含普通的key的hash表,一个包含前向通配符的hash表,一个包含后向通配符的hash表(或者也可以把这三个hash表组合成一个ngx_hash_combined...

2018-11-15 13:54:07 421 1

转载 nginx源码分析之变量

nginx中的变量在nginx中的使用非常的多,正因为变量的存在,使得nginx在配置上变得非常灵活。我们知道,在nginx的配置文件中,配合变量,我们可以动态的得到我们想要的值。最常见的使用是,我们在写access_log的格式时,需要用到多很多变量。 而这些变量是如何工作的呢?我们可以输出哪些变量?我们又怎么才能输出自己想要的内容呢?当然,我们可能还想知道,如何在我们的模块里面去使用变量,...

2018-11-15 10:18:02 596

转载 nginx处理http(http变量篇)

nginx http变量定义struct ngx_http_variable_s {    ngx_str_t                     name;   //变量名    ngx_http_set_variable_pt      set_handler;  //设置变量函数    ngx_http_get_variable_pt      get_handler;  /...

2018-11-14 17:49:07 3358

转载 Nginx模块开发中使用PCRE正则表达式匹配

Nginx内部对pcre库的常用操作进行了封装. 封装的源码位于nginx/src/core/ngx_regex.c, 同时将pcre内使用的内存池更变为了Nginx的内存池. pcre_compile: Nginx封装了pcre_compile方法. 方法名为ngx_regex_compile. ngx_regex_compile方法的参数需要传入一个ngx_regex_compi...

2018-11-14 11:16:29 1743

转载 nginx源码分析(5)——监听socket初始化

在nginx源码分析(4)中,看到了nginx的事件模型,但其中没有介绍监听socket的初始化。而对于web server来说,需要通过监听socket来监听客户端的连接等。本篇将会具体介绍这方面的内容。还记得在前文介绍ngx_cycle_t结构时,它具有一个listening属性,是一个数组,存储所有监听socket,下面就来看看这些信息是什么时候添加的、以及如何初始化的。1. 重要的数据...

2018-11-13 15:04:04 483

转载 linux ngx listen的解析

listen的解析:ngx_http_core_listen方法:- 调用ngx_parse_url解析url。- 初始化ngx_http_listen_opt_t结构lsopt- 调用ngx_sock_ntop初始化lsopt.addr为点分十进制IP。- 处理listen的其他配置参数,如:backlog= ,rcvbuf=, sndbuf=, ssl, so_keepal...

2018-11-13 14:55:21 422

转载 PCRE接口pcre_fullinfo混合子模式调用结果

NGINX中使用PCRE最为正则表达式的解析接口,对编译和解析过程中的一些点进行了测试验证PCRE接口pcre_fullinfo()的描述在这个链接中有详细的描述,这里对接口的一些链接 http://mushclient.com/pcre/index.html这里描述一下命名子模式(named subpattern)和非命名子模式(numbering subpattern)混合使用的情...

2018-11-09 13:49:56 968

转载 PCRE函数简介和使用示例

PCRE是一个NFA正则引擎,不然不能提供完全与Perl一致的正则语法功能。但它同时也实现了DFA,只是满足数学意义上的正则。 PCRE提供了19个接口函数,为了简单介绍,使用PCRE内带的测试程序(pcretest.c)示例用法。1. pcre_compile       原型:         #include <pcre.h>pcre *pcre_comp...

2018-11-09 13:41:38 1858

转载 nginx模块开发—HTTP初始化之listen

1、知识百科nginx作为一个高性能的HTTP服务器,网络的处理是其核心,了解网络的初始化有助于加深对nginx网络处理的了解。与网络有关的配置命令主要有两个:listen和sever_name。listen命令设置nginx监听地址,对于IP协议,这个地址就是address和port,对于UNIX域套接字协议,这个地址就是path,一条listen指令只能指定一个address或者port,...

2018-11-09 10:41:29 1297

转载 Nginx入门之两种handler函数的挂载方式

请在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。接着上次的文章,今天研究《深入理解Nginx模块开发与架构解析》一书中给出的mytest的例子,发现和 /tengine.taobao.org/book/ 一书中的例子不甚相同,尤其是在handler函数的挂在方面。函数的挂载分为两种方式:一种方式就是按处理阶段挂载;另外一种挂载方式就是按需挂载。tengine.taobao...

2018-11-07 11:17:28 640

转载 nginx phase handler的原理和选择

nginx phase handler的原理和选择PHASE HANDLER的种类nginx在接收并解析完请求行,请求头之后,就会依次调用各个phase handler。 phase handler是完成nginx主要功能的阶段。Nginx有如下11种phase,phase会依次执行。同一个phase,可能会挂载多个handler。其中斜体加粗的phase,不允许挂载用户自定义的handl...

2018-11-07 10:37:53 332

原创 CDN技术详解

第一章 引言1.1 CDN的基本概念和产生背景CDN: Content Distribute Network: 内容分发网络,或者,Content Delivery Network:内容交付网络我们常说的互联网,是广义的互联网,由两层组成:一层是以TCP/IP为代表的网络层(也就是狭义互联网概念),另一层是以万维网为代表的应用层。以TCP/IP为核心的狭义的互联网,实际上是广义互...

2018-11-02 15:39:10 3992

转载 gitlab project项目迁移

一、gitlab迁移需求由于集团要求,需要把子公司gitlab仓库迁移到集团的gitlab仓库子公司gitlab地址:git.aaa.com,集团gitlab地址:git.bbb.net二、gitlab迁移步骤1、查看目前子公司gitlab地址luoxuejun-d1:360-fang yanmin$ git remote -vorigin    git@git.aaa.com:36...

2018-11-01 14:12:35 8292

GBT 28181-2016 公共安全视频监控联网系统信息传输、交换、控制技术要求.pdf

GBT 28181-2016 公共安全视频监控联网系统信息传输、交换、控制技术要求.pdf

2024-03-27

基于大规模弱监督的鲁棒语音识别

基于大规模弱监督的鲁棒语音识别

2024-03-05

MediaInfo_GUI_0.7.66_Windows_x64_WithoutInstaller.7z

一个专门查看视音频格式的工具,作者雷神

2022-01-13

ffmpeg基础库编程开发_add_notes.pdf

音视频封装格式,编码格式,ffmpeg基础接口的介绍

2019-05-24

video_file_format_spec_v10_1.pdf

flv官方文档。The open FLV and F4V file format specification specification documents file format information for storing media content used to deliver streaming audio and video for playback in Adobe Flash Player and Adobe AIR. These video file formats are open, allowing other products and technologies to implement these specifications.

2018-05-14

Lex和Yacc从入门到精通pdf

本系列文档就是专门用来由浅入深的介绍两 个有名的Unix 工 具Lex 和Yacc,并会一步一步的详细解释如何用这两个工具 来实现我们想要的任何 功能的解析程序

2017-12-25

rtmpdump-2.3_add_note

rtmpdump-2.3 add useful notes for developers。rtmpdump is a toolkit for RTMP streams. All forms of RTMP are supported, including rtmp://, rtmpt://, rtmpe://, rtmpte://, and rtmps://.

2017-09-20

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除