腾讯云
开发者社区
文档
建议反馈
控制台
登录/注册
首页
学习
活动
专区
工具
TVP
腾讯云架构师技术同盟
文章/答案/技术大牛
搜索
搜索
关闭
发布
首页
学习
活动
专区
工具
TVP
腾讯云架构师技术同盟
返回腾讯云官网
码农心语
专栏成员
举报
17
文章
10764
阅读量
14
订阅数
订阅专栏
申请加入专栏
全部文章(17)
nginx(8)
原理(6)
连接(4)
mp4(3)
编码(3)
函数(3)
配置(3)
搜索(3)
算法(3)
压缩(3)
https(2)
cmake(2)
list(2)
mask(2)
客户端(2)
视频(2)
性能(2)
性能优化(2)
音视频(2)
优化(2)
源码(2)
git(1)
缓存(1)
atom(1)
bit(1)
file(1)
limit(1)
proxy(1)
sample(1)
ssl(1)
stream(1)
txt(1)
version(1)
表格(1)
部署(1)
程序(1)
递归(1)
服务器(1)
基础(1)
脚本(1)
流媒体(1)
数据(1)
效率(1)
协议(1)
域名(1)
搜索文章
搜索
搜索
关闭
基于cmake为项目自动获取git分支tag的版本号和commitid
git
cmake
version
程序
源码
在项目构建的时候,我们经常会希望能够将git提交的分支信息和提交号(commitid)以及当前版本发布的tag信息作为版本号自动构建到程序里面,以便后续能够快速定位所运行的程序所定影的git源码的版本,从而快速发现和定位问题。
码农心语
2024-07-20
308
0
给基于cmake的工程添加uninstall功能
部署
脚本
cmake
file
txt
我们知道,cmake提供了install指令可以让我们在项目构建完成后,通过make install命令,或者通过cmake --install . --prefix=<安装目录> 命令的方式来将CMakeLists.txt文件中通过install指令配置的文件安装到目标目录中。
码农心语
2024-07-20
197
0
nginx中的哈夫曼编解码算法[中]-解码
原理
源码
nginx
编码
算法
在《nginx中的哈夫曼编解码算法[上]-编码》中,我们介绍了nginx采用查表的方法来实现的哈夫曼编码对http2 hpack进行压缩的功能,其编码的实现原理还是比较简单的。然而,上山容易下山难,nginx中实现的快速哈夫曼解码算法在理解上相对于编码算法有一些难度的。今天我们来聊一聊nginx是如何来实现快速哈夫曼解码的。
码农心语
2024-06-06
111
0
一文读懂H.264 NALU起始码快速搜索算法
算法
效率
性能
原理
搜索
在播放H.264码流的时候,进行NALU的搜索的效率高低影响着系统的性能。有采用普通逐字节搜索的算法,有利用cpu的simd的单指令多数据操作的并行功能进行搜索的算法,今天要介绍的是一个非常简单而且高效的快速搜索算法,而且不需要利用simd指令,搜索的速度甚至快于我之前开发的simd版本的搜索算法, simd版本可以参考[H264/H265 NALU 起始码搜索性能优化(2)]
码农心语
2024-05-17
158
0
nginx中的哈夫曼编解码算法[上]-编码
nginx
编码
算法
压缩
优化
在http2以前的http头部报文都是文本形式发送,http2为了优化网络对头部报文进行压缩编码使其内容更精简,发送更少的数据加快网络传输,采用压缩算法就是hpack。其中hpack算法在进行http header名字和值的压缩的使用使用了静态哈夫曼编码算法,因此nginx为了支持http2,实现了哈夫曼压缩的编解码来对http2进行支持。
码农心语
2024-05-08
130
0
深入理解H264的帧内预测模式的编码
bit
编码
表格
压缩
原理
在H264的帧内预测选择了最佳预测模式后,需要对选择的每个4x4帧内预测模式进行编码成信号,以便后面传输给解码器。但是一个图像帧的4x4块很多,这样会需要大量比特来表示。考虑到相邻的4x4块本身是强相关的,因此它们的帧内预测模式也是强相关的。利用这个特性,我们可以对图像帧的预测模式进行压缩编码输出,从而在保证相同质量的情况下,达到降低视频码率的目的。
码农心语
2024-04-10
322
0
深入理解nginx realip模块
递归
函数
客户端
连接
nginx
nginx 的 Real IP 模块用于解决代理服务器转发请求到nginx上时可能出现的 IP 地址问题。因为当 PROXY收到客户端的请求时,它会通过自己的IP与nginx服务器连接并转发请求。这会导致在nginx应用程序中记录的 IP 地址是代理服务器的地址,而不是实际客户端的地址。
码农心语
2024-04-10
1.3K
0
深入理解MP4视频文件裁剪原理[下]
音视频
原理
mp4
sample
压缩
stts box里面保存了一个压缩格式的表,用来描述音视频帧的解码时间戳。如下图19:
码农心语
2024-04-09
213
0
深入理解MP4视频文件裁剪原理[上]
原理
mp4
视频
数据
音视频
随着数字媒体的迅速发展,视频成为人们生活中不可或缺的一部分。MP4(Moving Picture Experts Group 4)作为一种常见的视频文件格式,被广泛应用于各种领域,包括电视、电影、广告和网络媒体等。然而,有时我们需要对MP4文件进行裁剪,以满足特定的需求,例如提取出一部电影中的某个片段,或者创建个性化的视频内容。
码农心语
2024-04-09
269
0
深入理解nginx mp4流媒体模块[上]
nginx
atom
mp4
流媒体
视频
在当今数字化时代,视频已成为互联网上最主要的内容形式之一。NGINX作为一款高性能的Web服务器和反向代理服务器,提供了强大的MP4模块,用于优化MP4视频的点播传输功能,并支持播放器的任意拖拽功能。本文将通过通过源码分析深入探讨NGINX MP4模块的实现源码,介绍其功能和实现原理。
码农心语
2024-04-09
1.1K
0
H264/H265 NALU 起始码搜索性能优化(2)
性能优化
list
mask
基础
搜索
在H264/H265 NALU 起始码搜索性能优化(1)的基础上,这几天又思考了一下,针对上次的simd的实现算法,发现还有一些优化余地,利用start code应该是小概率事件的特性,可以将几次的比较结果放到一个int64的字段m里面,通过判断该字段是否为0,就只要一个条件判断就可以确定16个byte里面(哦,准确地讲是14个byte,最高的两个byte需要跨16字节边界进行判断)到底是否存在start code,然后通过调整m的判断顺序,还可以保证添加到输出结果中的记录依然能够保序,省去了最后进行排序的需求。
码农心语
2024-04-09
127
0
深入理解nginx的请求限流模块
nginx
limit
服务器
函数
配置
当构建高流量的Web应用程序时,保护服务器免受过多请求的影响是至关重要的。过多的请求可能会导致服务器过载,降低性能甚至导致系统崩溃。为了解决这个问题,nginx提供了一个强大的请求限速模块。该模块允许您根据自定义规则限制客户端请求的速率,并且还可以使用延迟机制来平滑处理超出限制的请求。在本文中,我们将深入探讨nginx的请求限速模块,了解它的工作原理、配置选项以及如何在实际应用中使用它来保护您的服务器免受恶意或异常请求的影响。
码农心语
2024-04-09
953
0
nginx优化指南
缓存
客户端
配置
优化
nginx
nginx是一款高性能的开源Web服务器和反向代理服务器。它由俄罗斯的工程师Igor Sysoev开发,并于2004年首次公开发布。Nginx的设计目标是提供高性能、稳定性和低资源消耗的解决方案,以应对大流量的网站和应用程序。
码农心语
2024-04-09
928
0
H264/H265 NALU 起始码搜索性能优化(1)
list
mask
搜索
性能
性能优化
在ffmpeg中,在进行h264 rbsp流demux的时候,需要进行starting code的搜索,其采用的方法比较简单,就是不断比较字节流中连续的三个字节,是不是 0x00, 0x00, 0x01,ffmpeg采用如下代码用来找到各个NALU的分界点:
码农心语
2024-04-09
103
0
深入理解nginx的https sni机制
https
连接
配置
域名
nginx
SNI(Server Name Indication)是一种TLS(Transport Layer Security)协议的扩展,用于在建立加密连接时指定服务器的主机名。在使用单个IP地址和端口提供多个域名的服务时,SNI是非常有用的。 当客户端发起TLS握手时,它会发送一个包含所请求主机名的扩展,这样服务器就可以根据这个主机名选择合适的证书来完成握手。这使得服务器能够在同一IP地址和端口上为多个域名提供加密连接,而不需要为每个域名分配一个独立的IP地址。 对于HTTPS网站来说,SNI是至关重要的,因为它允许服务器在同一IP地址上为多个域名提供加密连接,不需要为每个域名单独部署一台服务器,从而降低了运维成本并提高了灵活性。 在使用SNI时,服务器端必须能够根据客户端发送的SNI信息来选择正确的证书进行握手。通常,服务器端配置会包含多个虚拟主机的证书信息,以便根据收到的SNI信息选择正确的证书来完成握手。 总的来说,SNI允许客户端在TLS握手期间指定所请求的主机名,从而使服务器能够根据主机名选择正确的证书,实现一个IP地址上多个域名的加密连接。
码农心语
2024-04-09
3K
1
深入理解nginx的https alpn机制
协议
nginx
https
函数
连接
应用层协议协商(Application-Layer Protocol Negotiation,简称ALPN)是一个传输层安全协议(TLS) 的扩展, ALPN 使得应用层可以协商在安全连接层之上使用什么协议, 避免了额外的往返通讯, 并且独立于应用层协议。ALPN 用于 HTTP/2 连接, 和HTTP/1.x 相比, HTTP 2的使用增强了网页的压缩率减少了网络延时。ALPN 和 HTTP/2 协议是伴随着 Google 开发 SPDY 协议出现的。
码农心语
2024-04-09
649
0
深入理解nginx stream proxy 模块的ssl连接原理
proxy
ssl
stream
连接
原理
我一直来对ssl建立连接的过程一知半解,以前分析nginx代码的时候一旦碰到ssl连接部分的代码都是直接跳过,前面在分析ngx_http_upstream_dynamic_module的时候正好想到了是不是可以给它添加一个能够支持https健康检查的功能,所以今天决定沉下心来仔细分析一下nginx本身的与上游服务器建立连接的实现逻辑。
码农心语
2024-04-09
954
0
没有更多了
社区活动
Python精品学习库
代码在线跑,知识轻松学
立即查看
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
立即体验
技术创作特训营·精选知识专栏
往期视频·干货材料·成员作品 最新动态
立即查看
领券
问题归档
专栏文章
快讯文章归档
关键词归档
开发者手册归档
开发者手册 Section 归档