<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Dablekai的专栏]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/Dablekai</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; Dablekai]]></copyright><item><title><![CDATA[nginx lua]]></title><link>https://blog.youkuaiyun.com/Dablekai/article/details/50157845</link><guid>https://blog.youkuaiyun.com/Dablekai/article/details/50157845</guid><author>Dablekai</author><pubDate>Thu, 03 Dec 2015 10:59:42 +0800</pubDate><description><![CDATA[gx_lua 是一个 NGINX 的第三方扩展模块，它能够将 Lua 代码嵌入到 NGINX 中来执行。



UPYUN CDN 大量使用了 NGINX 作为反向代理服务器，其中绝大部分的业务逻辑已经由 Lua 来驱动了。

这个主题之前在 OSC 源创会 2014 北京站 和 SegmentFault D-Day 2015 南京站 有做过简单分享，Slide 在这里：《Using ]]></description><category></category></item><item><title><![CDATA[ngx lua]]></title><link>https://blog.youkuaiyun.com/Dablekai/article/details/49128171</link><guid>https://blog.youkuaiyun.com/Dablekai/article/details/49128171</guid><author>Dablekai</author><pubDate>Wed, 14 Oct 2015 17:35:00 +0800</pubDate><description><![CDATA[第一个lua脚本

ngx.say 是打印的打印输出的意思。。。
location /echo {
default_type text/plain;
echo hello lua;
}
location /lua {
default_type text/plain;
content_by_lua 'ngx.say("hello world")';
}

用lua脚本做nginx的访问的限]]></description><category></category></item><item><title><![CDATA[https server]]></title><link>https://blog.youkuaiyun.com/Dablekai/article/details/46803297</link><guid>https://blog.youkuaiyun.com/Dablekai/article/details/46803297</guid><author>Dablekai</author><pubDate>Wed, 08 Jul 2015 14:44:20 +0800</pubDate><description><![CDATA[最近在研究nginx，整好遇到一个需求就是希望服务器与客户端之间传输内容是加密的，防止中间监听泄露信息，但是去证书服务商那边申请证书又不合算，因为访问服务器的都是内部人士，所以自己给自己颁发证书，忽略掉浏览器的不信任警报即可。下面是颁发证书和配置过程。

首先确保机器上安装了openssl和openssl-devel

#yum install openssl
#yum install o]]></description><category></category></item><item><title><![CDATA[makefile 书写]]></title><link>https://blog.youkuaiyun.com/Dablekai/article/details/45150759</link><guid>https://blog.youkuaiyun.com/Dablekai/article/details/45150759</guid><author>Dablekai</author><pubDate>Mon, 20 Apr 2015 15:17:32 +0800</pubDate><description><![CDATA[一、 三个基本概念




（注：本文所有的测试都是在 Linux 环境下进行的）

  在Makefile中，最重要的三个概念是：目标（target）、依赖关系（dependency）和命令（command）。目标是指要干什么，即运行make后生成什么；依赖是指明目标所依赖的其他目标；命令则告诉make如何生成目标，这三个概念是通过Makefile中的规则（rule）关联在一起的。]]></description><category></category></item><item><title><![CDATA[nginx 源码分析 1 - 配置解析]]></title><link>https://blog.youkuaiyun.com/Dablekai/article/details/44218703</link><guid>https://blog.youkuaiyun.com/Dablekai/article/details/44218703</guid><author>Dablekai</author><pubDate>Thu, 12 Mar 2015 11:09:38 +0800</pubDate><description><![CDATA[看了nginx代码，感觉应该写点什么，记下来，自己以后慢慢看，很多还是浅浅的懂了那么点点
看代码，首先进入的当然是main函数了，
nginx.c -> main()
进入后，是一堆的一些初始化




局部变量有一个cycle， init_cycle 
看代码可以看到，起初把一些配置信息都是放到init_cycle里面，然后通过


把需要的本模块的配置指令都返回到cyc]]></description><category></category></item><item><title><![CDATA[网络包流程]]></title><link>https://blog.youkuaiyun.com/Dablekai/article/details/42708249</link><guid>https://blog.youkuaiyun.com/Dablekai/article/details/42708249</guid><author>Dablekai</author><pubDate>Wed, 14 Jan 2015 13:43:46 +0800</pubDate><description><![CDATA[发送：
应用程序调用系统调用，将数据发送给socket
socket检查数据类型，调用相应的send函数
send函数检查socket状态、协议类型，传给传输层
tcp/udp（传输层协议）为这些数据创建数据结构，加入协议头部，比如端口号、检验和，传给下层（网络层）
ip（网络层协议）添加ip头，比如ip地址、检验和
如果数据包大小超过了mtu（最大数据包大小），则分片；ip将这些数据]]></description><category></category></item><item><title><![CDATA[ndk 编译调试]]></title><link>https://blog.youkuaiyun.com/Dablekai/article/details/42029051</link><guid>https://blog.youkuaiyun.com/Dablekai/article/details/42029051</guid><author>Dablekai</author><pubDate>Fri, 19 Dec 2014 16:14:05 +0800</pubDate><description><![CDATA[在交叉编译的时候，尤其是不同中语言之间的交叉编译，往往遇到问题后，会很让人头疼。。。
这俩天在编译调试ndk的时候，就出现了！！
之前ndk编译的各种so，给android调用一直都是好好的，过了一段时间，修复了一些bug后，再编译成so，
然后给andorid调用的时候，莫名的崩溃，启动就崩溃，由于最近也给android编译了ijkPlayer播放器，然后全部都集成进去了！！
那么问题来]]></description><category></category></item><item><title><![CDATA[linux 文件时间]]></title><link>https://blog.youkuaiyun.com/Dablekai/article/details/42003535</link><guid>https://blog.youkuaiyun.com/Dablekai/article/details/42003535</guid><author>Dablekai</author><pubDate>Thu, 18 Dec 2014 12:06:00 +0800</pubDate><description><![CDATA[linux  文件一般有三个时间  （通过stat或者lstat获取文件属性）可以得到文件的st_atime, st_mtime, st_ctime


当使用 cat  read 等一系列读取文件操作的时候，文件的st_atime会跟随着一直改变；我的系统是ubuntu，当使用vi操作的时候，文件的访问时间st_atime没有跟随着变化


当使用 write 等一系列写操作文件的时]]></description><category></category></item><item><title><![CDATA[利用strace 调试程序]]></title><link>https://blog.youkuaiyun.com/Dablekai/article/details/42002323</link><guid>https://blog.youkuaiyun.com/Dablekai/article/details/42002323</guid><author>Dablekai</author><pubDate>Thu, 18 Dec 2014 10:40:14 +0800</pubDate><description><![CDATA[strace -p pid  调试程序；
可以看到进程执行的过程，显示的是系统调用的函数，同时可以看出系统调用的返回值]]></description><category></category></item><item><title><![CDATA[linux  列出最近修改的文件]]></title><link>https://blog.youkuaiyun.com/Dablekai/article/details/42002289</link><guid>https://blog.youkuaiyun.com/Dablekai/article/details/42002289</guid><author>Dablekai</author><pubDate>Thu, 18 Dec 2014 10:37:48 +0800</pubDate><description><![CDATA[查找当前目录下.phtml文件中，最近30分钟内修改过的文件。







find
 . -name '*.phtml' -type
 f -mmin -30







查找当前目录下.phtml文件中，最近30分钟内修改过的文件，的详细情况。







find
 . -name '*.phtml' -type
 f -mmin]]></description><category></category></item><item><title><![CDATA[brk和sbrk malloc关系讲解]]></title><link>https://blog.youkuaiyun.com/Dablekai/article/details/39231449</link><guid>https://blog.youkuaiyun.com/Dablekai/article/details/39231449</guid><author>Dablekai</author><pubDate>Fri, 12 Sep 2014 16:10:59 +0800</pubDate><description><![CDATA[brk和sbrk主要的工作是实现虚拟内存到内存的映射.在GNUC中,内存分配是这样的:

       每个进程可访问的虚拟内存空间为3G，但在程序编译时，不可能也没必要为程序分配这么大的空间，只分配并不大的数据段空间，程序中动态分配的空间就是从这 一块分配的。如果这块空间不够，malloc函数族（realloc，calloc等）就调用sbrk函数将数据段的下界移动，sbrk函数在内核的管理 ]]></description><category></category></item><item><title><![CDATA[gdb 显示全文]]></title><link>https://blog.youkuaiyun.com/Dablekai/article/details/39051139</link><guid>https://blog.youkuaiyun.com/Dablekai/article/details/39051139</guid><author>Dablekai</author><pubDate>Thu, 04 Sep 2014 13:25:31 +0800</pubDate><description><![CDATA[GDB下用p看一个字符串的时候默认显示是截断的，可以通过set print element 0命令显示完整的字符串。]]></description><category></category></item><item><title><![CDATA[andoird jni - 应用出现各种权限问题解决]]></title><link>https://blog.youkuaiyun.com/Dablekai/article/details/38733619</link><guid>https://blog.youkuaiyun.com/Dablekai/article/details/38733619</guid><author>Dablekai</author><pubDate>Thu, 21 Aug 2014 17:19:36 +0800</pubDate><description><![CDATA[android 生成app，会出现<uses-permission android:name="]]></description><category></category></item><item><title><![CDATA[在调用静态库，一直提示undefined reference to 问题解决]]></title><link>https://blog.youkuaiyun.com/Dablekai/article/details/38558855</link><guid>https://blog.youkuaiyun.com/Dablekai/article/details/38558855</guid><author>Dablekai</author><pubDate>Thu, 14 Aug 2014 15:13:13 +0800</pubDate><description><![CDATA[1 ： 那就是没有 加入某库才提示的，，可以指定路径]]></description><category></category></item><item><title><![CDATA[linux jni头文件生成]]></title><link>https://blog.youkuaiyun.com/Dablekai/article/details/38435795</link><guid>https://blog.youkuaiyun.com/Dablekai/article/details/38435795</guid><author>Dablekai</author><pubDate>Fri, 08 Aug 2014 10:41:27 +0800</pubDate><description><![CDATA[进入到工程的src文件，把你要
运行如下命令
> javac com\android\libjni\LibJavaHeader.java
> javah com.android.libjni.LibJavaHeader]]></description><category></category></item><item><title><![CDATA[google ip list]]></title><link>https://blog.youkuaiyun.com/Dablekai/article/details/30082583</link><guid>https://blog.youkuaiyun.com/Dablekai/article/details/30082583</guid><author>Dablekai</author><pubDate>Wed, 11 Jun 2014 17:52:29 +0800</pubDate><description><![CDATA[http://www.kookle.co.nr/]]></description><category></category></item><item><title><![CDATA[linux  man手册]]></title><link>https://blog.youkuaiyun.com/Dablekai/article/details/27519405</link><guid>https://blog.youkuaiyun.com/Dablekai/article/details/27519405</guid><author>Dablekai</author><pubDate>Thu, 29 May 2014 12:23:58 +0800</pubDate><description><![CDATA[无意之中看到的一个网站，不错。。。http://linux.die.net/man/3/getaddrinfo]]></description><category></category></item><item><title><![CDATA[---***---]]></title><link>https://blog.youkuaiyun.com/Dablekai/article/details/27177691</link><guid>https://blog.youkuaiyun.com/Dablekai/article/details/27177691</guid><author>Dablekai</author><pubDate>Tue, 27 May 2014 10:17:38 +0800</pubDate><description><![CDATA[# if __WORDSIZE == 32
    #define _INT_64_ "lld"
#else
    #define _INT_64_ "ld"
#endif



printf("%"_INT_64_"-%"_INT_64_"/%"_INT_64_"\n", a, b , c);]]></description><category></category></item><item><title><![CDATA[linux 下cat都正常显示，vi却显示乱码 问题解决]]></title><link>https://blog.youkuaiyun.com/Dablekai/article/details/26242545</link><guid>https://blog.youkuaiyun.com/Dablekai/article/details/26242545</guid><author>Dablekai</author><pubDate>Mon, 19 May 2014 14:11:29 +0800</pubDate><description><![CDATA[今天在做一个东西的时候发现,LANG设置为en_US.UTF-8,putty上的编码设置为Use font encoding, putty上输出汉字正常,重定向到文件后vi乱码,cat,more这个文件汉字显示也正常,查了网上很多东西最后发现按一种说法改对了:
应该是格式化的问题！ 比如man手册的文件有一些格式标记，你用man   ,cat都可以正常现实，但是用vi看起来就有点混乱！因为vi把]]></description><category></category></item><item><title><![CDATA[printf 缓冲机制的问题]]></title><link>https://blog.youkuaiyun.com/Dablekai/article/details/23277673</link><guid>https://blog.youkuaiyun.com/Dablekai/article/details/23277673</guid><author>Dablekai</author><pubDate>Wed, 09 Apr 2014 16:33:37 +0800</pubDate><description><![CDATA[printf()打印的时候，才


int32_t a = 1234; int64_t b = 8976;
printf( "b = %lld, a = %d \n", b, a );]]></description><category></category></item></channel></rss>