自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(39)
  • 资源 (2)
  • 收藏
  • 关注

原创 ZLMediakit之onceToken

ZMLediakit之onceToken在国内的开源媒体框架中,ZLMediakit做的是非常 非常 非常不错的了。(作者也是一个非常值得尊敬的高手)是非常值得学习的,这里对ZML的代码做一个深度解析(自己认为的!!!有什么 不正确的请指出)下面是ZLMediakit信息:gitee网站:开源地址:https://gitee.com/xia-chu/ZLMediaKit?_from=gitee_search交流QQ群:690854210onceToken是一个非常不错的工具这里是源码位置http

2022-01-22 19:36:40 729

原创 ZLMediakit之base64

ZMLediakit之base64在国内的开源媒体框架中,ZLMediakit做的是非常 非常 非常不错的了。(作者也是一个非常值得尊敬的高手)是非常值得学习的,这里对ZML的代码做一个深度解析(自己认为的!!!有什么 不正确的请指出)下面是ZLMediakit信息:gitee网站:开源地址:https://gitee.com/xia-chu/ZLMediaKit?_from=gitee_search交流QQ群:690854210ZMLediakit中base64使用的是ffmpeg中的。这个大概

2022-01-22 19:06:37 453

原创 RTMP协议学习

1, 三次握手客户端发送 c0(版本号) c1 (一个1536自己的随机串)服务器收到c0 c1 后回复 s0(版本号) s1(一个1536自己的随机串)客户端发送c2(s1的随机串)服务器收到c2 回复s2(c1随机串)2,块基本头如果第一个字节的后6位不等于 0,1那么他的大小为1个字节如果为0,那么大小为2字节如果为1,那么大小为3字节...

2021-09-19 14:50:30 1795

原创 H264头简单说明

H264头简单说明1,h264帧数据在开头的位置可能是00 00 01也可能是00 00 00 01为什么要这样做呢?通过查看多篇文章发现它应该是这样的:在一个完整的帧分成多个Slice时,在除了第一个Slice,其他的Slice中会被添加上0x 00 00 012, sps描述00 00 00 01 67 (SPS)前面00 00 00 01 就不再做解释了,下面是67的二进制 +---------------+ |0|1|2|3|4|5|6|7| +---------------

2021-09-14 11:13:23 2169

原创 一个简单的clog

最近写代码的时候,想找一个好用点的日志库,选来选取发现都差不多,最后决定自己写一个简单的日志库,于是就有了clog该日志库使用存c实现,源码发布在链接:https://gitee.com/doublebullet/c_log使用非常简单#ifdef WINDOWS#include <windows.h>#include <time.h> #include <io.h> #include <direct.h> #include "clog.h

2021-05-30 20:05:07 445

原创 boost线程池简单示例

#include <stdio.h>#include <thread> #include <boost/bind.hpp> #include <boost/threadpool.hpp>using namespace boost::threadpool;void func(void){ for(int i=0;i<1000;i++) { usleep(1); }}void func1(int num){ for(int

2020-08-01 13:32:29 1075

原创 《四》设计模式 观察者模式 Observer / event

1.动机在软件构建的过程中,我们需要为某些对象建立一种"通知依赖关系"------------一个对象的状态发送改变,所有依赖对象都将得到通知。如果者样的依赖关系过于精密,将使软件不能很好地抵御变化。Observer.hpp//入口类class MainForm : public Form,public IPorgress{ TextBox *txtFilePath; TextBox *txtFileNumber; ProgressBar *progressBar;public: voi

2020-07-06 22:25:43 154

原创 《三》设计模式 strategy 策略模式

动机在软件构建过程中,某些对象使用的算法可能多种多样,经常改变,如果将这些算法都编码得到对象中,将会使对象变得异常复杂;而且有时候支持不使用的算法也是一个性能负担。复用:二进制文件的复用才叫复用,strategy.hppclass TaxStrategy{public: virtual void Calculate(int a)=0; virtual ~TaxStrategy(){}};class CNTax:public TaxStrategy{public : virt.

2020-07-06 21:18:03 128

原创 《二》设计模式之Template Medhod 模板方法

发送场景:在软件构建过程中,对某一项任务,有稳定的操作结构,但各个子步骤却有很多改变的需求,或者由于固有的原因(比如框架于应用之间的关系)而无法和任务的整体结构同时实现。任何在确定稳定操作结构的前提下,来灵活应对各个子步骤的变化或晚期实现需求?template_Medhod_lib.hpp//库开发class Library{public: //稳定的 void Run() { Step1(); if(Step2()) //支持变化.

2020-07-05 22:45:00 262

原创 《一》设计模式原则

变化是复用的天敌,面向对象设计最大的优势在于:抵御变化(降低变化范围)面向对象设计原则:1.依赖倒置原则(DIP)高层模块(稳定)不应该依赖于底层模块(变化),二者都应该依赖于抽象(稳定)。抽象(稳定)不应该依赖于实现细节(变化),实现细节应该依赖于抽象(稳定)。实现了隔离变化2.开放封闭原则(OCP)对扩展开放,对更改封闭。类模块应该是可扩展(增加)的,但是不可修改。3.单一职责原则(SRP)一个类应该仅有一个引起它变化的原因。变化的方向隐含着类的责任。4.Liskov替换原则(.

2020-07-05 22:04:04 132

原创 c++各种数据类型不同系统的大小统计

这是一个笔记,用来记录不同系统中不同数据类型的大小,最大值,最小值的,有没有写到了大家可以留言,我进行补充类型32位字节数32位取值范围64位字节数64位取值范围最大值宏定义最小值宏定义宏定义实现补充int4byte-2147483648~2147483647同32位同32位INT_MAXINT_MIN#define M_INT_MAX 0X7FFFFFFF #define M_INT_MIN 0X80000000宏定义 climits.hui

2020-07-05 20:42:48 321

原创 《五》设计模型 装饰模式 Decorator

下面为装饰模式实现的demo,装饰模式中一定包含一个基类的指针//*.hpp#pragma once#include <stdio.h>class Stream //流基类 {public: //IO流接口 virtual char Read(int number) = 0; virtual void Seek(int position) = 0; virtual void Write(int data) = 0; //虚析构保证子类析构能

2020-07-05 18:47:36 129

原创 ubantu报错failed to download package files,设置主服务器下载站点地址

修改下载源设置按Alt+ F2并输入software-properties-gtk, 按回车设置下载地址选择好后之间关闭中国科学技术大学:http://mirrors.ustc.edu.cn/ubuntu-releases/14.04/兰州大学:http://mirror.lzu.edu.cn/ubuntu-releases/14.04/清华大学:http://mirrors.tuna.tsinghua.edu.cn/ubuntu-releases/14.04/网易..

2020-06-27 19:50:00 4778

原创 《HTTP权威指南》附录 学习总结

**定个小目标,吃透这本书,每天最少一章 **在W3C注册的URI方案HTTP状态码《HTTP权威指南》正式结束了,历经12天,里面写的有的地方可能不详细,主要用于记录一些,方便以后查询。...

2020-06-25 19:23:07 111

原创 《HTTP权威指南》第二十一章学习总结--日志记录与使用情况跟踪

**定个小目标,吃透这本书,每天最少一章 CSDN 见 没有意外情况的话,今天就会写完**记录内容大多数情况下,日志的记录出于两种原因:查找服务器或代理中存在的问题,或者是生成web站点访问方式的统计信息。通常会记录下来的几个字段示例为:HTTP方法;客户端和服务器的HTTP版本;所请求资源的URL响应的HTTP状态码请求和响应报文的尺寸事务开始时的时间戳Referer首部和User-Agent首部的值日志格式命中率测量命中率测量协议定义了一种HTTP扩展,它提供了一些基本

2020-06-25 19:11:26 129

原创 《HTTP权威指南》第二十章学习总结--重定向与负载均衡

**定个小目标,吃透这本书,每天最少一章 CSDN 见** 好快,都20章了,还有3章就结束了为什么要重定向由于HTTP应用程序总要做下列3件事情,所有现代网络中重定向是普遍存在的:可靠的执行HTTO事务;最小化时延;节约网络带宽。出于这些原因,web内容通常分布在很多地方。这样,如果一个位置出问题了,还有其他地方可用;如果客户端能去访问较近的资源,就可以更快的收到所请求的内容,以降低响应时间;将目标服务器分散,还可以减少网络拥塞。重定向到何地从客户端发向目标发送HTTP请求,目标对其进行处.

2020-06-25 16:32:18 486

原创 《HTTP权威指南》第十九章学习总结--发布系统

**定个小目标,吃透这本书,每天最少一章 CSDN 见**FrontPage为支持发布而做的服务器扩展FP是微软提供的一种通用WEB协助和发布工具包。FrontPage的发布协议在HTTP的post请求之上实现了以个RPC层。它允许FrontPage客户端向服务器发送命令来更新网站上的内容。...

2020-06-25 11:08:25 156

原创 《HTTP权威指南》第十八章学习总结--Web主机托管

**定个小目标,吃透这本书,每天最少一章 CSDN 见**主机托管服务随着WEB迅速成为主流,每人都向要一个网站,但很少有人能有能力或事件来搭建带空调的服务器机房,注册域名,等等。为了满足人们的迫切需求,出现了很多新的企业,提供了专业化管理的WEB主机托管服务。在越来越多的人想要拥有字节的网站时,但由于物理服务器太贵,而且自己使用又不能充分的使用,这时,出现了虚拟主机托管,来满足这部分人的需求。虚拟服务器请求缺乏主机信息不幸的是HTTP/1.0中的一个设计缺陷会是虚拟主机托管抓狂。HTTP/1

2020-06-25 11:07:49 116

原创 《HTTP权威指南》第十七章学习总结--内容协商技术

**定个小目标,吃透这本书,每天最少一章 CSDN 见**内容协商技术一个URL常常需要代表若干个不同的支援,例如那种需要以多种语言提供其内容的网站站点。共有3种不同的方法可以决定服务器上那个页面最适合客户端:让客户端来选择,服务器自动判定,或者让中间代理来选择。者3种技术分布称为客户端驱动的协商,服务器驱动的协商,以及透明协商。下面是三种技术的优缺点客户端驱动的协商对于服务器来说,收到客户端请求时只是发挥响应,在其中列出可用的页面,让客户端决定要看那个,者是最容易的事情。很显然,者是服务.

2020-06-24 16:38:17 165

原创 《HTTP权威指南》第十六章学习总结--HTTP对国际性内容的支持

**定个小目标,吃透这本书,每天最少一章 CSDN 见**HTTP对国家性内容的支持HTTP报文可以承载以任何语言表示的内容,就像它能承载图像,影片,或任何类型的媒体那样。服务器通过HTTP协议的Contrnt-Type首部中的charser参数和Content-Language首部告知客户端文档的字母和语言。客户端需要告知服务器用户理解何种语言,浏览器上安装了何种语言的编码算法。客户端发送Accept-Charset首部和Accept-Language首部告诉服务器它能理解那些字符集编码算法.

2020-06-24 15:08:54 111

原创 《HTTP权威指南》第十五章学习总结--实体和编码

**定个小目标,吃透这本书,每天最少一章 CSDN 见**报文是乡镇,实体是货物如果吧HTTP报文想象成因特尔网货运系统中的箱子,那么HTTP实体就是报文中实际的货物。HTTP实体首部描述了HTTP报文的内容,HTTP/1.1版定义了一下10个基础字体首部:Content-Type:实体中所承载对象的类型Content-Length:所传输实体的长度或大小Content-Language:与传输对象最相配的人类语言Content-Encoding:对象数据所做的任意转换(比如,压缩)C.

2020-06-23 12:22:28 172

原创 《HTTP权威指南》第十四章学习总结--安全HTTP

**定个小目标,吃透这本书,每天最少一章 CSDN 见**保护HTTP的安全HTTPS是最流行的HTTP安全形式。HTTPS方案的URL以 https://开头。数字加密密码:对文本进行辩论,使偷窥者无法识别的算法。密钥:改变密码行为的数字化参数。对称密钥和加密系统:编/解码使用同样的算法。不对称密钥和加密系统:编/解码使用不同的算法。公开密钥加密系统:一种能够使数背完计算机便捷的发送机密报文的系统。数字签名:用来证明报文未被伪造或篡改的校验和。数字证书:有一个可信的组织验证和签发.

2020-06-22 20:44:41 138

原创 《HTTP权威指南》第十三章学习总结--摘要认证

**定个小目标,吃透这本书,每天最少一章 CSDN 见**摘要认证的改进摘要认证是一种HTTP认证协议,它试图修复基本认证协议的验证缺陷。它进行了如下改正:永远不会以明文方式在网络上发送密码可以防止恶意用户捕获并重放认证的握手过程。可以有选择的防止对报文内容的篡改防止其他几种创建的攻击方式。下面是摘要认证的密码保护常见的摘要函数MD5,会将任意长度字节序转换为一个128位的摘要,通常被写成32个十六进制的字符。这样的算法是不可逆的。摘要认证的可信就是对公共信息,报名信息和有限的..

2020-06-22 20:44:14 386

原创 《HTTP权威指南》第十二章学习总结-- 基本认证机制

**定个小目标,吃透这本书,每天最少一章 CSDN 见**认证HTTP提供了一个原始的咨询/响应框架,简化了对用户的认证过程。HTTP通过遗嘱可定制的控制首部为不同的认证协议提供了一个可扩展框架。基本认证基本认证是最流向的HTTP认证协议,几乎没个主要的客户端和服务器都实现了基本认证机制,基本认证最初是在HTTP/1.0中规范的。中间的代理服务器也可以实现认证功能。这个过程的第一步就是通过代理认证开识别身份的。基本热衷的安全缺陷基本认证见简单便捷,但并不安全,只能用它来防止非恶意..

2020-06-21 11:28:39 165 1

原创 《HTTP权威指南》第十一章学习总结--客户端识别于cookie机制

**定个小目标,吃透这本书,每天最少一章 CSDN 见**个性化接触个性化的问候:战马为用户生产的欢迎词和页面内容,是购物更加个性化。有的放矢的推荐:通过了解用户的兴趣,提供对应的产品管理信息存档:保存用户的购物习惯记录会话:记录用户每一次访问的信息HTTP首部HTTP提供了七种常见的首部,用来承载用户的相关信息。客户端的IP地址通常HTTP首部并不提供客户端的IP地址,但服务器可以找到HTTP请求另一端的IP地址,但由于一些中间技术的诞生,这样的方法并不是很实用。用户登录w..

2020-06-20 12:48:01 293

原创 《HTTP权威指南》第十章学习总结--HTTP-NG

**定个小目标,吃透这本书,每天最少一章 CSDN 见**HTTP发展中存在的问题HTTP最初被设想为一种简单的技术,用于访问分布式星系服务器上链接的多媒体内容。但在过期的十年中,HTTP及其衍生产品起到了更为广泛的作用。HTTP相当负责,而且其特性之间是相互依存的,由于存在一些负责的,相互交织的要求,以及链接管理,报文处理的功能逻辑之间的混合左右,想要正确的使用是非常痛苦的,很容易出错。HTT很难实现递增式扩展,很多流传下来的HTTP应用程序中都没有自主的功能性扩展技术。HTTP有些部分..

2020-06-19 19:42:00 190

原创 《HTTP权威指南》第九章学习总结--WEB机器人

**定个小目标,吃透这本书,每天最少一章 CSDN 见**WEB爬虫是一种机器人,它可以爬取网络上的数据。我们需要给它一个其实点,爬虫开始访问的URL初始集合,被称作根集。跟集中并不需要很多页面,就可以涵盖一大片的WEB结构,一个好的根集会包括一些大的流行的WEB站点。爬虫会将所有爬取的HTML进行解析,收集有用的信息,会对上面所有的URL链接进行分析,并将这些链接添加到需要爬行的页面列表中去。机器人在Web 上爬行时, 要特别小心不要陷入循环, 或环路之中。复杂的机器人可能会用搜索树或...

2020-06-18 22:00:08 113

原创 《HTTP权威指南》第八章学习总结--网关

**定个小目标,吃透这本书,每天最少一章 CSDN 见**网关单个应用程序无法处理所有这些能想到的资源。为了解决这个问题,开发者们提出了网关的概念。网关是资源和应用程序直接的粘合剂,应用程序可以请求网关来处理某条请求,网关可以提供一条响应,网关可以向数据库发送查询语句,或者生成动态的内容,就像一个们一样,进去一个请求,出来一个响应。有些网关会自动将HTTP流量转换为其他协议,这样HTTP客户端无需链接其他协议,就可以与其他应用程序进行交互。网关协议将HTTP流量导向网关是所使用的方式与将流..

2020-06-18 00:05:37 253

原创 《HTTP权威指南》第七章学习总结--缓存

**定个小目标,吃透这本书,每天最少一章 CSDN 见**缓存是HTTP通信中非常重要的一个部分,他能够让你在有限的带宽中达到更大的使用。给我的感觉缓存更新是一个活跃在原始WEB服务器前的优秀士兵,下面来说一下吧,冗余的数据传输当一个东西流行起来后,就会有很对客户端访问这个事物的。但是他们获取的信息都是一样的,这会照成web服务器重发发送N多分一样的数据,里面并没有区别,这样不但占用了服务器的带宽资源,还会占用服务器的性能资源。如果在客户端和服务器之间存在N个缓存的话,就可以将一些热度够高的数..

2020-06-17 01:08:22 150

原创 《HTTP权威指南》第六章学习总结--代理

**定个小目标,吃透这本书,每天最少一章 CSDN 见**Web的中间实体web代理服务器是网络的中实体,代理位于客户端和服务器之间。HTTP代理服务器既是WEB服务器有时WEB客户端,它需要处理来自客户端的请求报文,也要向服务器发送请求,如果要创建自己额HTTP代理就要认真的遵循为HTTP客户端和HTTP服务器指定的规则。大多数代理都是公共的共享代理,集中式代理的费效更高,更容易管理。某些代理应用,比如高速缓存代理服务器会利用用户间共同的请求,这样的话,汇入同一个代理服务器的用户越多,它就越

2020-06-16 00:11:13 256

原创 《HTTP权威指南》第五章学习总结--Web服务器

**定个小目标,吃透这本书,每天最少一章 CSDN 见**各种Web服务器目前市面上的Web服务器有很多,大大小小各种各样。有通用软件Web服务器,嵌入式服务器等等目前大部分使用的都是Apache的服务器,(因为免费且好用)还有微软的WEB服务器,和Sun的iPlanet等等Apache的服务器内核实现有超过50,000行代码,而最小的Perl服务器实现小于30行代码实际的Web服务器会做些什么(1)建立链接,或者关闭一个链接当有客户端来链接时,建立链接,或者当有客户端需要端口是断开链接

2020-06-15 18:22:33 129

原创 LINUX nf_register_hooks NF_HOOK以及模块实现以及模块的装载和卸载

最近一个项目需要检查TCP/IP包,于是就有了它HOOK代码编写下面展示一些 内联代码片。// 钩子回调函数 unsigned int myHookCallBack(void *priv, struct sk_buff *skb, const struct nf_hook_state *state){···············}struct nf_hook_ops g_stMyNfHook = { .hook = myHookCallBack,

2020-06-15 16:22:28 2542

原创 《HTTP权威指南》第四章学习总结

吃透HTTP权威指南 第四章 TCP链接 **定个小目标,吃透这本书,每天最少一章 CSDN 见**TCP链接几乎所有的HTTP都是由TCP/IP承载的HTTP链接实际上就是通过TCP链接和使用了一个链接的规则,TCP链接在因特网是可靠的链接,HTTP的报文/数据传输都是在TCP的链接中传输的。HTTP的协议栈为 HTTP–>TCP–>IP;其他安全版的HTTPS 就是在HTTP和TCP中间插入了一个加密层HTTP要传输一条报文是会以流的形式将报文数据的内容通过一条打开的TC

2020-06-15 00:22:03 194

原创 《HTTP权威指南》第三章学习总结

吃透HTTP权威指南 第三章 HTTP报文**定个小目标,吃透这本书,每天最少一章 CSDN 见**报文流HTTP报文,用来“包裹”HTTP数据的箱子,HTTP报文是在HTTP应用之间发送的数据块,是一些以文本形式的数据,描述了传输数据的内容,这些数据在客户端服务器和代理之间流动,简称为报文流。HTTP用术语流入和流出来描述事务处理的方向,客户端到服务器为流入,服务器到客户端到流出。报文会像水一样向下流动。客户端—>代理—>服务器—>代理—>客户端报文的组成形式H

2020-06-14 18:58:37 222

原创 《HTTP权威指南》第二章学习总结

吃透HTTP权威指南 第二章**定个小目标,吃透这本书,每天最少一章 CSDN 见**浏览因特网资源通过一个URL 你们找到很多你需要的东西一个URL分为三个部分HTTP方案,告知客户端用HTTP的协议链接访问www.baodu.com 知道的服务器位置,这部分告知客户端访问哪里/test/piaoliang.jpg 这部分是服务器上的资源路径URL可以使用HTTP之外的其他协议来访问资源,URL语法URL是一种定位因特网上任意资源的手段,因为可以使用不同的协议,所有URL的语

2020-06-14 01:13:49 121

原创 《HTTP权威指南》第一章学习总结

吃透HTTP权威指南 第一章定个小目标,吃透这本书,每天最少一章 CSDN 见HTTP 因特网的多媒体信使这一小节没啥好说的···一些基本的介绍Web客户端和服务器Web服务器一般被称为HTTP服务器我们在浏览一个页面时,浏览器会向HTTP服务器发送一个HTTP请求,服务器会去寻找所期望的对象,如果成功,就将对象类型,长度以及其他一些信息放在HTTP响应中发生给客户端。资源web服务器是web资源的宿主,web资源是web内容的源头。最简单的web资源就是web服务器上的一个txt文件,

2020-06-13 20:00:32 218

转载 Unix高级编程:环境变量、静态库、动态库制作和使用、gdb调试工具

学好C语言3句话:常量和变量运算符的优先级和结合性变量的内存空间。访问一个变量的时候,首先通过变量的名字找到变量的地址,然后根据变量的类型访问变量的内存空间(“运算符优先级表”&“ASCII码表”&“进程映射”&“编译过程”&“小工具,如gdb”)一、环境变量 ————"《鸟哥linux私房菜》"程序在运行的时候,操作系统通过变量提供的环境。查看环境变量:“env” (命令行)环境变量的格式:环境变量的名字=环境变量的值如:USER=tarena注

2020-06-13 10:00:28 287

原创 Linux压缩命令

主要以下xxx问文件名xxx.tar.gz 类:(1)解压:tar -xvzf xxx.tar.gz; 解压至tar gizp -d xxx.tar.gz(2)压缩:gizp xxxxxx.tar类:(1)解包:tar -xvf xxx.rat(2)打包:tar -cvf xxx.rat xxxxxx.zip类:(1)解压:uzip xxx.zip -d dir(2)压缩:zip xxx.zip 待压缩文件列表xxx.bz2类:(1)解压:bunzip2 xxx.bz2 或者

2020-06-13 09:33:08 688

原创 GetAsyncKeyState API 在XP 中和win7 中是否不一样

GetAsyncKeyState API 在XP 中和win7 中是否不一样代码如下:#include &lt;stdio.h&gt; #include &lt;winsock2.h&gt; #include &lt;time.h&gt;#include&lt;WS2tcpip.h&gt;#include &lt;iostream&gt;#include &lt;iostrea...

2018-10-28 00:00:45 443

windows——socket通讯.zip

基于Windows的SOCKET编程,里面包含的UDP和TCP的代码实现,是现在网络通讯中的基本代码,编译环境是VS都可以。

2019-12-16

socket通讯.zip

基本的socket通讯适用于新手学习,理解socket通讯,里面包含TCP通讯的客户端服务端源码,还又UDP的客户端和服务端源码。代码实现环境位LINUX环境。

2019-12-16

空空如也

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

TA关注的人

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