nginx模块开发的一些经验
fastdfs有nginx模块,在上面做一些缩略图缓存的功能。我当时总是觉得lua-nginx这种方式太重了,因此就入了nginx模块开发这个坑。
nginx模块开发的资料网上还是比较多的,《nginx模块开发与架构解析》这一本就不错,推荐入手实体书。我看PDF看的有点烦躁,因为很多东西要来回对照着看。
很多基础东西书里写的很细,就不谈了,就说说自己开发时候的过程和遇到的坑吧。
nginx模块是存在http module和http filter module的。
http module依次处理,最后输出内容,输出的内容再由http filter module依次过滤内容输出。
Log Structured Merge Trees译文以及LSM调研心得
(nginx源码系列一)--nginx源代码初步学习
nginx真是博大精深,最近写fastdfs的动态缩略图模块,刚好能有时间研究下,真是满心欢喜。
学习主要是靠两本书,其他的稍微搜搜也就能解惑了。
《Nginx模块开发与架构解析》这个我看的电子PDF
《Nginx开发从入门到精通》这个有网页版本的,挺好的:
android jni的坑
传统的jni方式是这个步骤
1.在java文件中定义native函数
2.使用javah 生成对应C函数定义并实现
3.编写Android.mk把C源码用ndk编译成动态库
4.在java中调入编译好的动态库
密码模块二三事
公司需要,需要对一些加解密模块做调研。
把一些参考资料贴出来
这个是内核中摘出的算法,不知道为什么特别慢,DES加解密一起只能到7M/S的数据处理
服务器性能测试二三事
关于redis集群线上以及测试环境出现read time out,connect time out的总结
记twemproxy的一次性能测试
twemproxy的性能应该很好,毕竟是twitter在使用的,稳定性应该很高。
然而测试组的同学对其二倍扩容以后,基本没提升QPS,甚至QPS还降低了
我和我的小伙伴们一直以为是客户端或者服务端代码的问题,各种抓包,LOG分析,查不出原因。写了C,JAVA等多个客户端版本。
后面发现原来是测试组的布线坑爹了。
关于之前测试环境redis集群极限qps提升不上去的问题,认定是由于之前4台测试环境部署的宿主机,走的交换机,交换机网络达到瓶颈导致的。
nginx-image模块和fastdfs module的协作
FastDFS组合nginx的http_image_filter_module建立的图片服务器,实现动态缩略图
用fastdfs存储图片,然后用nginx的图片处理模块http_image_filter_module处理图片,根据输入的地址中的图片大小动态生成缩略图
原图http://192.168.8.127:801/group1/ … WAAL8RoEHXq8410.jpg
动态生成的缩略图地址
http://192.168.8.127:801/group1/ … HXq8410,222x222.jpg