自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(434)
  • 资源 (22)
  • 收藏
  • 关注

原创 golang: go test

一、简单使用1.1 代码文件:MyTest.gopackage mainimport ( "fmt")func Add(a, b int) int { return a + b}func main() { a := 10 b := 20 fmt.Println("sum:", Add(a,b))}文件:MyTest_test.gopackage mainimport (

2022-03-18 17:31:50 587

原创 golang: 使用pprof做性能分析

## 一、pprof介绍## 二、使用

2022-03-08 21:43:17 323

原创 golang:第三方库,dns解析库miekg/dns

文章目录一、dns解析库1.1 dns查询一、dns解析库第三方dns库miekgmiekg/dns可以做dns查询、可以做local dns、可以做授权dns。由于下载不到:golang.org/x/crypto/ed25519,需要将代码中相关的代码删除掉,做dns查询时不会用到该部分代码。1.1 dns查询代码:package mainimport ( "fmt" "time" "github.com/miekg/dns")fu

2020-11-26 11:59:23 5505

原创 golang的http包:简单client与server、自定义请求、自定义处理重定向

文章目录一、http库1.1 简单client与server一、http库1.1 简单client与server代码1(server):package mainimport ( "io" "log" "net/http")func main() { helloHandler := func(w http.ResponseWriter, req *http.Request) { io.WriteS

2020-11-24 15:34:01 1005

原创 golang并发示例

文章目录一、golang并发示例1.1 select、超时一、golang并发示例1.1 select、超时知识点:select每个case语句必须是一个IO操作。select随机选择一个可运行的case。select没有可运行的case,就会阻塞。代码:package mainimport ( "fmt" "time")func main() { // ch := make(chan int) go

2020-10-12 20:12:53 411

原创 golang函数相关

文章目录一、函数参数1.1 值传递、引用传递一、函数参数1.1 值传递、引用传递知识点:slice是值传递。代码1:package mainimport ( "fmt")func test(a []int) { a = append(a, 4)}func main() { arr := []int{1,2,3} fmt.Println(arr) test(arr) fmt.Print

2020-10-10 17:13:30 260

原创 go错误处理:defer、panic、recover

文章目录一、错误处理1.1 正常代码运行1.2 panic代码运行1.3 defer&recover代码运行一、错误处理1.1 正常代码运行代码:package mainimport ( "fmt")func test() { fmt.Println("test1") //panic("test panic") fmt.Println("test2")}func main() { test()

2020-10-10 10:46:31 127

原创 CGo

文章目录cgocgo知识点/* */之前的是C代码。C代码和 import “C” 之间不能游空格,否则会报错。import “C” 必须单独一行,不能和其他的import写在一起。代码:package main/*#include <stdint.h>static int32_t add(int32_t a, int32_t b) { return a + b;}*/import "C"import ( "fmt")f

2020-09-07 20:55:24 169

原创 Lua与C之间的交互

Lua与C之间的交互一、Lua与C之间的交互1.1 C调用lua函数一、Lua与C之间的交互1.1 C调用lua函数代码:test.lua:function add(x, y) return x + yendtest.c:#include <stdio.h>#include "lua.h"#include "lauxlib.h"#include "lualib.h"int lua_add(lua_State *L){ lua_getg

2020-09-04 11:33:55 163

原创 golang用struct实现继承和多重继承

struct实现继承和多重继承零、知识点一、继承1.1 代码1.2 运行结果二、多重继承2.1 代码2.2 运行结果零、知识点继承一个结构体嵌到另一个结构体,称作组合。匿名和组合的区别:1.如果一个struct嵌套了另一个匿名结构体,那么这个结构可以直接访问匿名结构体的方法,从而实现继承。2.如果一个struct嵌套了另一个【有名】的结构体,那么这个模式叫做组合。3.如果一个struct嵌套了多个匿名结构体,那么这个结构可以直接访问多个匿名结构体的方法,从而实现多重继承。一、继承1

2020-08-06 15:08:58 4884

原创 golang接口interface实现多态

interface实现多态一、代码二、运行结果一、代码package mainimport ( "fmt")//interfacetype IPerson interface { Info() string}//teachertype Teacher struct { Name string}func (t *Teacher) Info() string { return "teacher name: " + t.Name}//studenttype Stude

2020-08-06 14:53:21 866

原创 2.Lua

零、Lua虚拟机编译语言、脚本语言的区别,以及虚拟机的2种实现方式:四、Lua与C交互虚拟栈:C调用Lua:

2019-10-11 19:25:20 200

原创 使用nginx和nginx-rtmp-module模块配置RTMP直播服务器

一、下载/安装nginx、nginx-rtmp-module1.1 下载nginx-rtmp-module https://github.com/arut/nginx-rtmp-module unzip nginx-rtmp-module-master.zip1.2 下载并安装nginx http://nginx.org/download/ngin...

2019-07-08 11:36:58 6331

原创 Linux C:函数的可变参数

一、代码主要使用:    #include &lt;stdarg.h&gt;    ...    va_list    void va_start(va_list ap, last);    type va_arg(va_list ap, type);    void va_end(va_list ap);第一个参数c,用来指定参数的个数。#include &lt;stdio.h&gt;#inc...

2018-04-09 16:06:54 1560

原创 Lua:安装使用Lua扩展库LuaSocket

一、下载、安装1.1 下载        文件名:luasocket-2.0.2.tar.gz         下载地址:http://files.luaforge.net/releases/luasocket/luasocket                            http://luaforge.net/projects/        github源码下载

2016-05-11 09:39:41 14431

原创 Nginx:一致性哈希(第三方模块ngx_http_consistent_hash)

一、介绍        Nginx upstream可以实现负载均衡。        第三方模块ngx_http_consistent_hash通过一致性哈希算法来选择合适的后端节点。二、下载、编译到Nginx2.1 下载        文件名:ngx_http_consistent_hash-master.zip        github下载:https://githu

2016-05-03 16:58:37 9509

原创 RabbitMQ:安装

一、安装Erlang        Erlang安装,Linux、Windows:http://blog.csdn.net/guowenyan001/article/details/47951369        RabbitMQ是使用Erlang实现的,依赖于Erlang。二、安装RabbitMQ Server2.1 安装前准备xmlto        yum insta

2016-04-25 17:58:54 653

原创 Nginx:Purge,ngx_cache_purge模块

一、介绍        ngx_cache_purge是由labs.frickle.com开发的一个Nginx第三方模块。        通过该模块使得Nginx可以使用PURGE指令手动清除指定URL的缓存页面。二、下载、编译到Nginx2.1 下载ngx_cache_purge        官网:http://labs.frickle.com/nginx_ngx_ca

2016-03-10 18:22:36 2274

原创 Lua:下载安装lua-cjson,lua操作json代码,指定require搜索路径

一、下载安装1.1 lua-cjson官网        官网:http://www.kyne.com.au/~mark/software/lua-cjson-manual.html1.2 下载安装        wget http://www.kyne.com.au/~mark/software/download/lua-cjson-2.1.0.tar.gz        t

2016-03-10 17:05:28 10929

原创 Nginx:作为缓存,支持Range回源

一、Range回源1.1 Nginx的Range回源、ngx_http_slice_module模块、--with-http_slice_module参数        Nginx的ngx_http_slice_module模块是用来支持Range回源的。        ngx_http_slice_module从Nginx的1.9.8版本开始有的。        启用ngx_ht

2016-03-09 16:40:28 15684

原创 Nginx:作为cdn缓存时,follow 302

一、应用环境1.1 rewrite        www.guowenyan.cn/test.html(任意url)        rewrite        www.guowenyan.cn/test01.html1.2 302        www.guowenyan.cn/test01.html        302        www.guowe

2016-03-08 18:54:36 4074

原创 Nginx:设置Nginx作为缓存

一、设置Nginx作为缓存1.1 完整的配置文件nginx.conf#user nobody;worker_processes 1;events { worker_connections 1024;}http { log_format main '$remote_addr - $remote_user [$time_local] "$request"

2016-03-07 18:46:52 2346

原创 Python:logging日志模块

一、将日志打印到屏幕1.1 代码1.2 运行结果二、通过logging.basicConfig设置日志等级及输出格式等2.1 代码2.2 运行结果三、将日志同时输出到日志和屏幕3.1 代码3.2 运行结果四、日志回滚4.1 代码#!/usr/bin/env pythonimport loggingfrom logging.h

2016-02-05 11:20:41 1022

原创 Python:os.path路径操作

一、概述        sys.argv[0]        __file__        os.path.abspath()        os.path.realpath()        os.path.split()        os.path.dirname()        os.path.basename()        os

2016-02-03 11:43:50 3701

原创 PHP:POST接口,插入POST数据到mysql数据库

一、接口代码1.1 创建数据库的SQL语句DROP TABLE IF EXISTS `test`.`domain_statistics_result`;CREATE TABLE `test`.`domain_statistics_result` ( `id` int(11) NOT NULL AUTO_INCREMENT, `domain` varchar(256) DEF

2016-01-12 19:08:18 4923

原创 Squid:下载、安装,配置代理上网

一、概述        官网:http://www.squid-cache.org/二、下载安装2.1 下载        文件名:squid-3.5.12.tar.gz        下载地址:http://www.squid-cache.org/Versions/2.2 安装        tar zxvf squid-3.5.12.tar.gz        

2015-12-23 16:05:14 5581

原创 ATS:下载安装、配置反向代理

一、ATS概述1.1 概述 ATS全称Apache Traffic Server 官网:http://trafficserver.apache.org/二、ATS下载、安装2.1 下载 文件名:trafficserver-6.0.0.tar.bz2 下载地址:http://www.apache.org/dyn/cl...

2015-12-23 11:44:53 3105

原创 Linux C:生成、调用静态库/动态库,.a,.so

一、代码1.1 说明        hello.h、hello.c是生成库的代码。        main.c是调用库的代码。1.2 代码hello.h:#ifndef HELLO_H#define HELLO_Hvoid hello(const char* name);#endifhello.c:#include #include "hell

2015-12-18 17:55:29 2935

原创 Nginx:设置为HTTP代理服务器上网,使用upstream

一、配置文件Nginx作为代理,将请求交给Cache处理,如果Cache没有缓存,就回源。通过upstream,可以实现多个Cache缓存之间的负载均衡。worker_processes 1;events { worker_connections 1024;}http { log_format main '$remote_addr - $remote_

2015-12-15 15:36:39 2939

原创 Nginx编写HTTP模块:“Hello World”的第二种写法(HTTP模块介入阶段的2种方法)

二、“Hello World”两种写法的不同1.1 第1种写法         1. 通过设置ngx_http_core_loc_conf_t结构体的handler指针来实现。         2. 仅仅用于URL匹配了location的用户请求 。          参照:Nginx编写HTTP模块:第一个Nginx HTTP模块 “Hello World”:http://b

2015-12-09 11:42:52 1069

原创 Wget:Windows下安装wget

一、下载        官网:http://gnuwin32.sourceforge.net/packages/wget.htm        下载地址:http://downloads.sourceforge.net/gnuwin32/wget-1.11.4-1-setup.exe二、安装与系统环境变量配置2.1 安装        双击一步步安装即可2.2 配置系统环境

2015-12-04 11:41:45 23879 2

原创 Lua:访问模块、创建模块、子模块与包

一、加载模块1.1 加载模块#!/usr/bin/env lua--complex = require "package.complex"complex = require "complex"print (complex.add(3,4))二、创建模块2.1 创建一个table,并将需要导出的函数放入其中,最后返回这个table#!/usr/bin/e

2015-11-25 18:46:56 1786

原创 Lua:table对象、类、继承、多重继承

一、table对象1.1 table有自己的操作#!/usr/bin/env lua--table AccountAccount = { balance = 0 }function Account.withdraw(v) Account.balance = Account.balance - vend--a = Account; --Account = n

2015-11-25 18:25:46 742

原创 Nginx+Lua访问Redis

一、代码1.1 准备1. 启动redis        src/redis-server2. 启动redis客户端,设置domain        src/redis-cli        set domain *.baidu.com1.2 代码local redis = require "resty.redis"local cache = redis.

2015-11-19 16:24:52 2896

原创 Redis:下载、安装,简单使用

一、下载安装1.1 Redis官网        http://redis.io/1.2 下载安装        http://redis.io/download        wget http://download.redis.io/releases/redis-3.0.5.tar.gz        tar zxvf redis-3.0.5.tar.gz

2015-11-18 16:43:51 721

原创 Perl 正则表达式

一、正则表达式1.1 使用简单模式$_ = "yabba dabba doo";if (/abba/){ print "matched\n";} 1. 用m//进行匹配: a. /abba/是m/abba/的缩写。 b. 定界符可以是选择: ...

2015-11-10 19:22:43 706

原创 Python:类方法、静态方法、实例方法

一、类方法、静态方法、实例方法1.1 区别        调用:                类方法,可以被类和类实例调用。                静态方法,可以被类和类实例调用。                实例方法,只能被类实例调用。        隐含调用参数:                类方法,隐含调用参数是类。

2015-10-14 11:32:30 715

原创 Python:HTTP请求模块(httplib/urllib,GET/POST,php),Web服务器模块

一、HTTP请求模块1.1 模块及区别模块:                httplib、 httplib2                urllib、urllib2区别:                2是1的加强版,http比url更底层。                可以理解为urllib是httplib的抽象。1.2 httplib实例代码#!/u

2015-10-14 09:33:55 3115

原创 Python模块paramiko:操作远程服务器

一、下载安装paramiko模块paramiko对远程服务器没有要求;本地需要安装python和pycrypto。1.1 下载安装        wget http://www.lag.net/paramiko/download/paramiko-1.7.7.1.tar.gz        tar xvzf paramiko-1.7.7.1.tar.gz        cd

2015-10-08 17:20:36 1439

原创 Python函数:装饰器

一、使用修饰函数在函数执行前和执行后分别附加额外功能1.1 代码#!/usr/bin/env pythondef deco(func): print "before func called" func() print "after func called" return funcdef myfunc():

2015-09-30 11:21:40 587

wireshark中将rtp流转为h264裸流

该文件支持了排序,FU-A,STAP-A的打包方式

2021-03-09

iso 14496-3.pdf

ISO/IEC 14496 Part 3 Audio完整版本,网上很难找到的完整版本哦,包含完整的subpart1-12的全部资料。 做音视频应用的必备参考!!! 其他的所要积分太高了。

2021-02-18

HexEditor0.9.6.0g.rar

64位notepad++显示十六进制HexEditor0.9.6.0。64位notepad++显示十六进制HexEditor0.9.6.0。

2019-11-01

《C++ Primer中文版》(第五版)带完整目录

花费了我大量的时间,手动一点点的做的目录,所以积分多了一点5个积分。

2018-10-15

抓取的https session连接恢复的数据包

抓包的操作步骤: 本机电脑浏览器(chrome)是client,本机上的一个虚拟机为server; client请求server,第一次建立连接; 断开虚拟机的网络,肯定断开了连接; 打开虚拟机的网络,再用client请求server,抓包。 恢复连接主要看ClientHello中的Session ID。 新建连接抓取的数据包:http://download.csdn.net/download/kanguolaikanguolaik/9974728 请求的url:https://blog.qihooyun.cn/ 响应内容:https-test 方便自己以后查看,不必每次都重新抓取一个包了。 Server端设置了keep-alive为65秒。

2017-09-12

抓取的HTTPS数据包(新)

请求的url:https://blog.qihooyun.cn/ 响应内容:https-test 方便自己以后查看,不必每次都重新抓取一个包了。 Server端设置了keep-alive为65秒。

2017-09-12

抓取的http2的数据

请求的url:https://blog.qihooyun.cn:8443/ 响应内容:index 方便自己以后查看,不必每次都重新抓取一个包了。

2017-09-08

抓取的https的数据包

请求的url:https://blog.qihooyun.cn/ 响应内容:https-test 方便自己以后查看,不必每次都重新抓取一个包了。

2017-09-08

curl 发送HEAD请求时的数据包

现象:curl 发送HEAD请求时会卡主很慢。 原因:curl接收到的内容小于Content-Length时,就会一直等待接收内容,直到超时(默认5分钟)。

2017-01-05

keepalive、pipeline数据包

keepalive、pipeline。 一个包里包含了2个请求的请求响应包。 服务端用的是Nginx 1.9.12。

2016-12-28

boost base64 加密 解密

base64加密、解密。 base库中的实现。

2013-12-18

boost库之dns解析模块源码

boost库,dns解析模块源码。 将其放倒boost库的相关目录下,在代码中,直接包含头文件即可使用。

2013-11-28

boost库之dns解析模块元麦

boost库的,dns解析模块源码。 将其直接放在boost库所在目录下,在代码中包含相关头文件,即可使用。

2013-11-28

dig 有edns_client_subnet的pcap包

dig 有edns_client_subnet的pcap包。可以与没有edns_client_subnet的pcap包形成对比。 执行命令:dig www.baidu.com @8.8.8.8 +client=104.119.200.200生成的。

2013-11-28

dig 没有edns_client_subnet的pcap包

dig时,没有edns_client_subnet的pcap包。 与有edns_client_subnet的pcap包,形成对比。

2013-11-28

dig 支持edns_client_subnet的dig

修改了的dig,支持edns_client_subnet。

2013-11-28

Linux内核源码剖析 下册 PDF

Linux内核源码剖析 下册 PDF。 讲述Linux内核的知识,是学习Linux内核必备的书籍。

2013-11-20

dns查询/响应 实例 pcap包

执行命令:dig @202.106.0.20 www.baidu.com 返回的数据包。 可以用来分析dns协议。深入了解dns。

2013-11-20

pipeline示例pcap包

该文件为pcap文件,抓取的pipeline数据包。 该数据包示例,一个包里多个请求 ,一个包里多个响应。

2013-11-01

Source Insight 3.5.00072免费版,有序列号

Source Insight 3.5.00072,绿色,免费,包含序列号。 很好的查看代码工具。

2013-07-12

空空如也

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

TA关注的人

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