自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(131)
  • 资源 (8)
  • 问答 (1)
  • 收藏
  • 关注

原创 工作三年的感慨

一些工作上的思考 业务上的收获 总结

2023-06-26 16:48:23 195 1

原创 关于三十而立

今天刷短视频 又看到了关于三十而立的论述 说的是人生目标/方向要确立 并对这个目标/方向不遗余力。我想目前是网络编程及设计架构。

2022-08-09 17:24:09 202 1

转载 常见ua

http://www.veryhuo.com/a/view/36482.html

2019-03-10 14:58:59 722

原创 powerdns源码分析

大致粗糙的分析了recursor  暂时没有分析authority620261853 进群吧 我在群里等大家

2018-12-25 10:31:43 564 1

原创 Blog暂时停更 写的好多东西太乱而且还是错的 转战云笔记

TODO

2018-10-30 10:09:11 185

翻译 C++ concurrentqueue资料

##特征- 让人震惊的[快速性能] [基准]。- 单头实现。把它放在你的项目中。- 完全线程安全的无锁队列。同时使用任意数量的线程。- C ++ 11实现 - 在可能的情况下(c11中的move语义)移动元素(而不是复制)。- 模板化,不需要专门处理指针 - 内存管理为您。- 元素类型或最大数量不受人为限制。- 内存可以预先分配一次,也可以根据需要动态分配。- 完全

2017-12-28 14:12:59 5741 1

原创 bbr cbuic

bbr有了bbr,其实大部分优化都没啥意思了,长时间传输tcp的问题就是时间长了会降速然后回升不了,老顽疾。就跟那天那个wifa组网的bug一样,大家都知道慢了,但是多少年也搞不懂我们用wget等去下载一些非常偏门的,遥远的星球上的资料的时候,经常遇到一开始1m几百K,最后慢慢到1K 2K的速度,就是tcp的锅啦,就是bbr解决的问题啦bbr解决的是一个tcp连接长时间跑之后,由于

2017-12-28 14:07:30 546

转载 nginx location语法使用及一些全局变量

语法规则: location [=|~|~*|^~] /uri/ { … }Location 指令,是用来为匹配的 URI 进行配置,URI 即语法中的”/uri/”,可以是字符串或正则表达式。但如果要使用正则表达式,则必须指定前缀。 URI 是指/dir/file.php不包括各种参数。/ 通用匹配,任何请求都会匹配到= 开头表示精确匹配~ 开头表示区分大

2017-12-18 14:08:39 2128

原创 补丁文件概述

git log e768cb61c335d8edafdc2cf17b4553cb490e49e4 --stat -p当看一个提交的具体信息时候 -p参数是看diff 会出现下面的diff文件描述diff --git a/CHANGES b/CHANGESindex 065ab60..5f00fba 100644--- a/CHANGES+++ b/CHANGES@@ -6,6 +6,

2017-12-06 17:21:39 472

原创 02 基础知识

一、 注释  JavaScript 注释分两种 跟c风格有点相似:    - 单行注释:// - 多行注释:/**/ 提示:单行注释不能折行,可以嵌套;多行注释可以折行,不能嵌套;二、 语句  一段脚本就是一系列计算机能够一步一步执行的指令。每一条单独的指令或步骤就被称为一条语句。语句以分号(;)结尾,多个语句可以写在一行内。var a = 10; // 这

2017-11-29 23:02:12 330 1

转载 1 JavaScript前言

之所以要学习JavaScript是因为各大主流网站的html嵌入脚本看不懂 规则也不清楚 so 学JavaScript也是必须的了 本仓库主要是涉及JavaScript基础知识的讲解,md文件格式,建议下载一个markdown编辑器用于演示内容,推荐使用:Typora。一、JavaScript 概述JavaScript是一种轻量级的脚本语言。所谓“脚本语言”,指的是它不具备开发操作系统的能力,

2017-11-29 22:13:51 1585

原创 tcpdump常用命令

抓get请求  tcpdump -i eth3 -nnvvAs 0 'tcp[((tcp[12:1] & 0xf0) >> 2):4]=0x47455420' |grep -C15 "huochepiao_share.dat" tcpdump -i eth0 -nnvvAs 0 '(tcp[((tcp[12:1] & 0xf0) >> 2):4]=0x47455420) and (src

2017-11-28 17:03:36 483

原创 ATS常用命令脚本化

先上代码#!/bin/bash export PATH=/opt/ats/bin:$PATHHONG () { echo -e "\033[0;31;1m$*\033[0m"}LV () { echo -e "\033[0;32;1m$*\033[0m"}if [ ! -x /opt/ats/bin/traffic_line ] th

2017-11-28 14:48:35 850

原创 常用的shell日志统计脚本

egrep "2017:15:" access.log | awk '{print $6}'| sort | uniq -c | sort -rn | headsort -u 去重 保证唯一性uniq 去除连续性的重复sort + uniq -c 是黄金搭档sort -n 按照整数排序 非常重要!参考 http://man.linuxde.net/uniq参考 http:/

2017-11-20 22:47:23 3825

原创 ats异步案例分析

现在以do_http_server_open为例 HttpSM::do_http_server_open(bool raw)netProcessor.connect_re(this,&t_state.current.server->addr.sa, &opt);获取状态机中的锁(this即httpSM的mutex最终源于netvc netvc的mutex源于(acceptLoo

2017-11-13 17:58:16 654

原创 linux dd命令

dd 是 Linux/UNIX 下的一个非常有用的命令,作用是用指定大小的块拷贝一个文件,并在拷贝的同时进行指定的转换。名称: dd 使用权限: 所有使用者dd 这个指令在 manual 里的定义是 convert and copy a file 使用方式: dd [option]如果你想要在线看 manual, 可以试试:dd --help 或 info dd输入

2017-11-11 11:01:53 271

原创 呵呵以呵呵

今天侧击旁敲问同事要脚本 却不给我 哼 我呸开个栏目好好学脚本了~~~

2017-11-09 20:57:16 333 2

原创 linux ss命令

ss用来显示处于活动状态的套接字信息。ss命令可以用来获取socket统计信息,它可以显示和netstat类似的内容。但ss的优势在于它能够显示更多更详细的有关TCP和连接状态的信息,而且比netstat更快速更高效。当服务器的socket连接数量变得非常大时,无论是使用netstat命令还是直接cat /proc/net/tcp,执行速度都会很慢。可能你不会有切身的感受,

2017-11-09 17:03:39 1487

原创 系统调优backlog与tcp_max_syn_backlog和somaxconn

man listen看man怎么说的 The behavior of the backlog argument on TCP sockets changed with Linux 2.2. Now it specifies the queue length for completely established sockets waitingto be accepted, instead

2017-11-09 15:45:53 7093 2

原创 apache traffic server各版本信息

4.0.x新特性在storage.config中标注磁盘此功能的目的是允许将内容分配给特定磁盘。比如,使用storage.config标注,在hosting.config和volumes.config规则里,你可以强制使某些URL去响应的SSD硬盘。HTTP事务缓冲控制为了避免潜在的内存消耗问题,当buffer的使用超过束缚则事物可被设成扼杀节流。这也可以用作每个事务的

2017-11-09 10:43:56 2424

原创 p2p打洞机制

tcp打洞首先我们明确现在我们有的设备:1、客户端A,网关NAT-A2、客户端B,网关NAT-B3、服务器S这些设备明确之后,就可以介绍TCP打洞的过程:1、首先服务器S开启两个服务监听,一个主连接端口,和一个协助打洞端口2、A通过主连接端口连接服务器S,B通过主连接端口连接服务器S,这个是正常的服务器通信3、当A需要和B进行直接连接时,首先A去连接服务器S

2017-11-03 15:56:52 2079 4

转载 ATS自定义日志中的各字段解读

refer http://blog.csdn.net/tao_627/article/details/45844287线上日志格式定义如下 % % % [%] % \"%\" % \"%\" %:% % \"%\" %"/>实例如下:1432194201.810 8945 200 200  [15:43:21] 211.143.88.220 "GET http://

2017-10-27 14:15:19 513

原创 socket那几个结构体那些事儿

struct sockaddr_in srvaddr; srvaddr.sin_family = AF_INET; srvaddr.sin_port = htons(8001); srvaddr.sin_addr.s_addr = inet_addr("127.0.0.1");熟悉吧sockaddr_in 是socket编程时 遇到

2017-10-27 10:59:47 651

转载 find常用操作总结

find [-path] -options [-print -exec -ok] -print是标准输出可以不加-exec对匹配的文件执行该参数所给出的shell命令 形式为command {} \;,注意{}与\;之间有空格 -ok与exec作用相同 区别是在执行命令之前 会给出提示 让用户确认是否执行 最常用的find . -name "*.txt" //查找当前目录下

2017-10-26 17:01:05 160

原创 grep常用操作

最最常用的一个  egrep "target" * -nR egrep 'l\{2,\}' 2.txtgrep -xf a.txt b.txt  //查询a与b共同存在的行grep -vxf b.txt a.txt //查询a的行不在b文件中面的,就是a比b多出来的行grep -v '^h' test.txt //显示非以h开头的   grep -v '^hello' test.t

2017-10-26 16:18:32 303

原创 记录一下socket中常见的TCP设置

TCP_DEFER_ACCEPT  只有当实际收到了数据,才唤醒正在 accept 的进程,可以减少一些无聊的上下文切换。  同时有个超时时间 若time_out之内还没有收到数据,不会继续唤醒进程,而是直接丢弃连接。例如:   设置TCP_DEFER_ACCEPT选项后,服务器受到一个CONNECT请求后,操作系统不会Accept,也不会创建IO句柄。  操作系统应该在若干秒

2017-10-26 11:42:33 545

原创 iovec用法

#include#include#includeint main(){ static char part1[] = "["; static char part2[] = "manchester united"; static int part3 = 97; struct iovec iov[3]; iov[0].iov_base = part1; iov[

2017-10-25 11:00:21 1618 1

原创 markdown编辑器基本用法

欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl

2017-10-12 15:25:25 312

转载 chrome+cVim手指不要再爽

cVim——Chrome上更强大的vim插件介绍也许很多人在chrome上都用过类似Vimium, ViChrome的插件,这些插件的目的都差不多,就是在浏览器中提供一些类似vim的操作来提高效率。但是大多这类的插件,实现的功能都比较单一化,实现了基本的浏览功能,但是不够强大。比如说 viusal 模式,就基本都不涉及。 机缘巧合下,发现了cVim插件,感觉就像打开了一扇全新的

2017-10-11 13:06:36 6156 5

原创 ats插件编写的一道坎

这个坎就是TSContSchedule函数

2017-10-10 10:57:01 479

原创 c语言中的static

静态全局变量,它可以被同一文件中的函数调用,但是不能被不同源文件中的所有函数调用。静态局部变量只能被其作用域内的变量或函数访问在C语言中,也有“private函数”,就是static函数 当你的程序中有很多个源文件的时候,你肯定会让某个源文件只提供一些外界需要的接口,其他的函数可能是为了实现这些接口而编写,这些其他的函数你可能并不希望被外界(非本源文件)所看到,这时候就可以用stati

2017-10-09 17:41:14 143

原创 ATS中常见的字符串操作2

比如把配置文件路径传递给一个状态机TSCont management_contp = TSContCreate(management_update, NULL); char *p = (char *)TSmalloc(config_path.size() + 1); strcpy(p, config_path.c_str());TSContDataSet(management_c

2017-09-27 16:28:03 296

转载 union和struct

#include int main(int argc, char** argv){ union { short i; struct { char a; char b; }str; }uni; uni.i = 0x4241; printf("%c

2017-09-26 10:28:31 190

原创 Traffic Server正向代理反向代理配置

打桩

2017-09-20 20:42:00 921

原创 4 append_transform插件理解

先看一下代码#include #include #include #include "ts/ts.h"#include "ink_defs.h"#define ASSERT_SUCCESS(_x) TSAssert((_x) == TS_SUCCESS)typedef struct { TSVIO output_vio; TSIOBuffer output_buffe

2017-09-20 13:54:40 624

原创 ATS插件中常见的字符串操作1

打桩

2017-09-18 15:40:50 529

原创 xshell中打开vim后的颜色与colorscheme配置颜色不符合

打桩

2017-09-12 19:00:26 5420

原创 p2p应该可以取代缓存业务吧

今天调试线上插件 预想去腾讯视频 提取出正片的url 找了好几个都没有找到正片urlso 插件里的那些流媒体编解码操作也失去了意义 突然发现现在的部分 比较吊的视频网站基本上都是p2pp2p我们做不了缓存 。。。。。。我问飞哥 将来所有的网站都用p2p那怎么办 他说:干一些其他的啊 转行。。。 我:哈哈哈哈哈哈哈哈哈嗝。。。

2017-09-11 21:02:04 215

原创 ATS中的 正向代理 反向代理

反向代理 :所有的请求经过302重定向后都指向我我就是服务器! 我对所有url请求进行 remap或者其他cgi处理我拿到资源后再返给用户 正向代理:就是透传 所有的url 不会有任何变化我就是浏览器也就是说 remap(反向代理) 和 透传(正向代理)是一对互斥事件 ats中只要打开了remap功能就 必须只 能够过滤remap.conf

2017-09-11 11:50:03 442

原创 dawm_uprising

GitHub - hankai17/dawn_uprising: data_struct testing ...

2017-09-10 13:35:28 228 12

cVim.crx google浏览器cVim插件

cVim.crx google浏览器cVim插件 chrome浏览器插件 cVim

2017-10-11

llvm libclang

llvm libclang 3.9版本 我把3个文件全部合并在一起了 不用再合并了 可以编译出llvm 我是用来安装youcompleteme用的

2017-09-07

自己写一个ip库

libcurl c++11 爬虫 IP库 ip2region ip138 ipip ipcn http 淘宝ip库

2017-04-28

0123curl.tar.gz

对应博客<curl探测服务器改进>

2017-01-23

curl探测.rar

纯手写

2017-01-11

hash_map的简单应用

hash_map

2017-01-05

及其精简的普通链表和托瓦兹链表

自己写的 精简的链表linklist 和托瓦兹链表 希望大家相互比对分析

2016-08-09

C/C++知识总结及应用

c和c++总结 有点乱先放出来 后期再改

2016-08-02

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

TA关注的人

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