1、开源软件的推广和进化zlog日志函数库难易2012.10.20zlog简介找不到合适的C日志函数库,于是打算自己写一个研究了log4j、syslog、log4c等等,发现log4j的设计丑陋,syslog的设计优美但受限制以syslog原型为出发点,目标是写一个通用的、线程安全的、高效率高安全性的日志库2011.01开始构思,直到2012.6发布了1.0版zlog的推广经历开源中国/国内几个IT网站zlog的推广经历github/软件主页/文档zlog的推广经历google/wiki/stackoverflow的攻防战zlog的推广经历freecode/水木社区反馈和改进性能改进gprofva
2、lgrind-tool=callgrind./test_press_zlog 1 10 10000kcachegrind/gprof2dot.py反馈和改进发现瓶颈gettimeofday(每日志)-localtime_r(每秒)-strftime整数转换为字符(ngix)/*if width num_len,0 padding,else output num*/int zlog_buf_printf_dec32(zlog_buf_t*a_buf,uint32_t ui32,int width)反馈和改进功能改进转档的支持和反对水木反馈和改进委内瑞拉的喜欢中国文化的朋友藏传佛教、禅定、冬虫夏草
3、、功夫windows版的创作者(pthreads-win32/UNIXem-glob.)pattheauxgithub,发现了一个对象生命周期的问题目前还在解决的,多线程的内存分配释放我从中学到了什么技术C/linux/latex/valgrind/auto tools/git/web/线程编程/英语工程简单模型,在完成本层功能的前提下,提供更多的选择给用户试着理解用户场景下的需求和出发点寻找乐趣、用更有趣的方法来解决问题。bug不是负担,而是进步的方向。对未来的编程世界展望硬件变化的趋势多CPU,大内存,SSD,硬盘相应的软件变化趋势语言级别对并行的支持(Go)消息队列通讯(zeromq)编译/构建/发布系统(新的make+autotools)跨越机器的操作系统(取代目前的云、多层)Just for Fun!