博客园 - dkcndk
uuid:6cbd1ba2-f883-4c34-aed1-30dde64a3a3e;id=653569
2017-12-02T21:51:00Z
dkcndk
https://www.cnblogs.com/dkblog/
feed.cnblogs.com
https://www.cnblogs.com/dkblog/p/5046001.html
听阿里技术大神讲解今年双11背后的关键技术 - dkcndk
from :http://www.chinacloud.cn/show.aspx?id=22417&cid=18 天猫淘宝的双11活动已经过去了十多天,今年的双11有232个国家参与进来成为名副其实的全球疯狂购物节。相信所有的数字大家都已经很清楚了,11日全天的交易额达到912.17亿元,其中在移动
2015-12-14T10:03:00Z
2015-12-14T10:03:00Z
dkcndk
https://www.cnblogs.com/dkblog/
【摘要】from :http://www.chinacloud.cn/show.aspx?id=22417&cid=18 天猫淘宝的双11活动已经过去了十多天,今年的双11有232个国家参与进来成为名副其实的全球疯狂购物节。相信所有的数字大家都已经很清楚了,11日全天的交易额达到912.17亿元,其中在移动 <a href="https://www.cnblogs.com/dkblog/p/5046001.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/dkblog/p/4997591.html
为什么刻薄的人注定失败? - dkcndk
最近我非常惊讶地发现:在我所认识的最成功人士中,刻薄的人是如此地少。虽然有例外,但的确非常少。刻薄并不罕见。事实上,一直以来互联网向我们展现的东西之一就是人们可以多么地刻薄。几十年前,只有名人和专业作家可以发表他们的见解,而现在每个人都可以,所以我们都可以看到原来被隐藏起来的、大众刻薄的一面。尽管确...
2015-11-26T06:14:00Z
2015-11-26T06:14:00Z
dkcndk
https://www.cnblogs.com/dkblog/
【摘要】最近我非常惊讶地发现:在我所认识的最成功人士中,刻薄的人是如此地少。虽然有例外,但的确非常少。刻薄并不罕见。事实上,一直以来互联网向我们展现的东西之一就是人们可以多么地刻薄。几十年前,只有名人和专业作家可以发表他们的见解,而现在每个人都可以,所以我们都可以看到原来被隐藏起来的、大众刻薄的一面。尽管确... <a href="https://www.cnblogs.com/dkblog/p/4997591.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/dkblog/p/4095512.html
集群NAS技术架构 - dkcndk
http://blog.csdn.net/liuaigui/article/details/6422700
2014-11-13T09:39:00Z
2014-11-13T09:39:00Z
dkcndk
https://www.cnblogs.com/dkblog/
【摘要】http://blog.csdn.net/liuaigui/article/details/6422700 <a href="https://www.cnblogs.com/dkblog/p/4095512.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/dkblog/p/3806277.html
使用gdb调试Python进程 - dkcndk
使用gdb调试Python进程有时我们会想调试一个正在运行的Python进程,或者一个Python进程的coredump。例如现在遇到一个mod_wsgi的进程僵死了,不接受请求,想看看究竟是运行到哪行Python代码呢?这时就需要祭出gdb了。主要是三步:1)确保你的gdb版本>=72)安装pyt...
2014-06-24T07:58:00Z
2014-06-24T07:58:00Z
dkcndk
https://www.cnblogs.com/dkblog/
【摘要】使用gdb调试Python进程有时我们会想调试一个正在运行的Python进程,或者一个Python进程的coredump。例如现在遇到一个mod_wsgi的进程僵死了,不接受请求,想看看究竟是运行到哪行Python代码呢?这时就需要祭出gdb了。主要是三步:1)确保你的gdb版本>=72)安装pyt... <a href="https://www.cnblogs.com/dkblog/p/3806277.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/dkblog/p/3804071.html
内存问题 - dkcndk
这两天线上的一个服务出现了内存问题,表现在使用top查看进程的RES会间断性的突然上升,而且从不下降。仔细review了线上的代码,没有发现内存泄漏,怀疑和glibc的内存分配机制有关,glibc并没有及时将内存释放给操作系统。可以自行使用如下的测试代码进行下验证,会发现使用默认的glibc和goo...
2014-06-23T07:16:00Z
2014-06-23T07:16:00Z
dkcndk
https://www.cnblogs.com/dkblog/
【摘要】这两天线上的一个服务出现了内存问题,表现在使用top查看进程的RES会间断性的突然上升,而且从不下降。仔细review了线上的代码,没有发现内存泄漏,怀疑和glibc的内存分配机制有关,glibc并没有及时将内存释放给操作系统。可以自行使用如下的测试代码进行下验证,会发现使用默认的glibc和goo... <a href="https://www.cnblogs.com/dkblog/p/3804071.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/dkblog/p/3613407.html
多网卡的7种bond模式原理 - dkcndk
多网卡的7种bond模式原理 Linux 多网卡绑定 网卡绑定mode共有七种(0~6) bond0、bond1、bond2、bond3、bond4、bond5、bond6 常用的有三种 mode=0:平衡负载模式,有自动备援,但需要”Switch”支援及设定。 mode=1:自动备援模式,其中一条
2014-03-20T04:13:00Z
2014-03-20T04:13:00Z
dkcndk
https://www.cnblogs.com/dkblog/
【摘要】多网卡的7种bond模式原理 Linux 多网卡绑定 网卡绑定mode共有七种(0~6) bond0、bond1、bond2、bond3、bond4、bond5、bond6 常用的有三种 mode=0:平衡负载模式,有自动备援,但需要”Switch”支援及设定。 mode=1:自动备援模式,其中一条 <a href="https://www.cnblogs.com/dkblog/p/3613407.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/dkblog/p/3210502.html
"我们需要专职的QA吗?" - dkcndk
http://coolshell.cn/articles/6994.html/comment-page-1
2013-07-24T05:48:00Z
2013-07-24T05:48:00Z
dkcndk
https://www.cnblogs.com/dkblog/
【摘要】http://coolshell.cn/articles/6994.html/comment-page-1 <a href="https://www.cnblogs.com/dkblog/p/3210502.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/dkblog/p/3188263.html
os.popen(command) - dkcndk
command="/usr/local/sbin/xxx_cmd"os.popen(command)xxx_cmd是自己编译的二进制文件,如果不加上全路径/usr/local/sbin/的话在你的python 进程是通过service xxx start方式启动时os.popen(command)返回内容为空的,函数执行命令也无异常,很奇怪,暂不能解释,记录在案。
2013-07-13T10:13:00Z
2013-07-13T10:13:00Z
dkcndk
https://www.cnblogs.com/dkblog/
【摘要】command="/usr/local/sbin/xxx_cmd"os.popen(command)xxx_cmd是自己编译的二进制文件,如果不加上全路径/usr/local/sbin/的话在你的python 进程是通过service xxx start方式启动时os.popen(command)返回内容为空的,函数执行命令也无异常,很奇怪,暂不能解释,记录在案。 <a href="https://www.cnblogs.com/dkblog/p/3188263.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/dkblog/p/3140030.html
程序性能优化 - dkcndk
开场白:最近公司招人,接触了一批形形色色的工程师,但感觉绝大多数人基础都很差,在某次TL的讨论之后,就想到了写一个《面试宝典》系列。卷首语:这个《面试宝典》名字是我一贯的标题党风格,其实在内容上都是很简单、很基础的——都是那种“不知道这些就别出来混”的知识点。所以,高手/牛人可以到此打住了——端咖啡——送客~~~作/译序:此文可能会持续更新直到补充得比较完整为止,有什么要补充的欢迎留言基础原则之万能利器:Profiling如何测量距离?——直尺/游标卡尺/卷尺/etc如何测量电压?——电压表/万用表如何测量时间?——钟表/秒表如何测量温度?——温度计如何测量质量?——天平/台秤/etc如何测量
2013-06-17T04:25:00Z
2013-06-17T04:25:00Z
dkcndk
https://www.cnblogs.com/dkblog/
【摘要】开场白:最近公司招人,接触了一批形形色色的工程师,但感觉绝大多数人基础都很差,在某次TL的讨论之后,就想到了写一个《面试宝典》系列。卷首语:这个《面试宝典》名字是我一贯的标题党风格,其实在内容上都是很简单、很基础的——都是那种“不知道这些就别出来混”的知识点。所以,高手/牛人可以到此打住了——端咖啡——送客~~~作/译序:此文可能会持续更新直到补充得比较完整为止,有什么要补充的欢迎留言基础原则之万能利器:Profiling如何测量距离?——直尺/游标卡尺/卷尺/etc如何测量电压?——电压表/万用表如何测量时间?——钟表/秒表如何测量温度?——温度计如何测量质量?——天平/台秤/etc如何测量 <a href="https://www.cnblogs.com/dkblog/p/3140030.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/dkblog/archive/2013/06/14/3135914.html
如何成为Python高手 - dkcndk
这篇文章主要是对我收集的一些文章的摘要。因为已经有很多比我有才华的人写出了大量关于如何成为优秀Python程序员的好文章。我的总结主要集中在四个基本题目上:函数式编程,性能,测试,编码规范。如果一个程序员能将这四个方面的内容知识都吸收消化,那他/她不管怎样都会有巨大的收获。函数式编程命令式的编程风格已经成为事实上的标准。命令式编程的程序是由一些描述状态转变的语句组成。虽然有时候这种编程方式十分的有效,但有时也不尽如此(比如复杂性) —— 而且,相对于声明式编程方式,它可能会显得不是很直观。如果你不明白我究竟是在说什么,这很正常。这里有一些文章能让你脑袋开窍。但你要注意,这些文章有点像《骇客帝国
2013-06-14T09:01:00Z
2013-06-14T09:01:00Z
dkcndk
https://www.cnblogs.com/dkblog/
【摘要】这篇文章主要是对我收集的一些文章的摘要。因为已经有很多比我有才华的人写出了大量关于如何成为优秀Python程序员的好文章。我的总结主要集中在四个基本题目上:函数式编程,性能,测试,编码规范。如果一个程序员能将这四个方面的内容知识都吸收消化,那他/她不管怎样都会有巨大的收获。函数式编程命令式的编程风格已经成为事实上的标准。命令式编程的程序是由一些描述状态转变的语句组成。虽然有时候这种编程方式十分的有效,但有时也不尽如此(比如复杂性) —— 而且,相对于声明式编程方式,它可能会显得不是很直观。如果你不明白我究竟是在说什么,这很正常。这里有一些文章能让你脑袋开窍。但你要注意,这些文章有点像《骇客帝国 <a href="https://www.cnblogs.com/dkblog/archive/2013/06/14/3135914.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/dkblog/archive/2013/06/14/3135872.html
Python 代码优化常见技巧 - dkcndk
Python 代码优化常见技巧 代码优化能够让程序运行更快,它是在不改变程序运行结果的情况下使得程序的运行效率更高,根据 80/20 原则,实现程序的重构、优化、扩展以及文档相关的事情通常需要消耗 80% 的工作量。优化通常包含两方面的内容:减小代码的体积,提高代码的运行效率。 改进算法,选择合适的数据结构 一个良好的算法能够对性能起到关键作用,因此性能改进的首要点是对算法的改进。在算法的时间复杂度排序上依次是:O(1) -> O(lg n) -> O(n lg n) -> O(n^2) -> O(n^3) -> O(n^k) -> O(k^n) ->
2013-06-14T08:48:00Z
2013-06-14T08:48:00Z
dkcndk
https://www.cnblogs.com/dkblog/
【摘要】Python 代码优化常见技巧 代码优化能够让程序运行更快,它是在不改变程序运行结果的情况下使得程序的运行效率更高,根据 80/20 原则,实现程序的重构、优化、扩展以及文档相关的事情通常需要消耗 80% 的工作量。优化通常包含两方面的内容:减小代码的体积,提高代码的运行效率。 改进算法,选择合适的数据结构 一个良好的算法能够对性能起到关键作用,因此性能改进的首要点是对算法的改进。在算法的时间复杂度排序上依次是:O(1) -> O(lg n) -> O(n lg n) -> O(n^2) -> O(n^3) -> O(n^k) -> O(k^n) -> <a href="https://www.cnblogs.com/dkblog/archive/2013/06/14/3135872.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/dkblog/archive/2013/06/08/3125778.html
windows 内存泄露和资源泄漏调试 - dkcndk
AQTime (有x64、win32的)进行内存泄露和资源泄漏监控http://wenku.baidu.com/view/9aa1c2afdd3383c4bb4cd2c1.htmlx64下载:http://downlite.net/lp.php?c=oc&n=AutomatedQA.AQTime.v6.21.400.x64.Cracked.WORKING-BRDWindows Leaks Detector(好象只有win32)http://sourceforge.net/projects/winleak/?source=dlp
2013-06-08T02:24:00Z
2013-06-08T02:24:00Z
dkcndk
https://www.cnblogs.com/dkblog/
【摘要】AQTime (有x64、win32的)进行内存泄露和资源泄漏监控http://wenku.baidu.com/view/9aa1c2afdd3383c4bb4cd2c1.htmlx64下载:http://downlite.net/lp.php?c=oc&n=AutomatedQA.AQTime.v6.21.400.x64.Cracked.WORKING-BRDWindows Leaks Detector(好象只有win32)http://sourceforge.net/projects/winleak/?source=dlp <a href="https://www.cnblogs.com/dkblog/archive/2013/06/08/3125778.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/dkblog/archive/2013/05/20/3089099.html
windows API编写的提取文件属性的程序 - dkcndk
用VC++6.0的编译环境,建的是win32 console application#include <stdafx.h>#include <string.h>#include <windows.h>DWORD ShowFileTime(PFILETIME lptime){ //文件时间结构 FILETIME ftLocal; //系统时间结构 SYSTEMTIME st; //调整为系统所在时区的时间 FileTimeToLocalFileTime(lptime,&ftLocal); //将文件时间转换为SYSTEMTIME格式,便于显示 File
2013-05-20T10:17:00Z
2013-05-20T10:17:00Z
dkcndk
https://www.cnblogs.com/dkblog/
【摘要】用VC++6.0的编译环境,建的是win32 console application#include <stdafx.h>#include <string.h>#include <windows.h>DWORD ShowFileTime(PFILETIME lptime){ //文件时间结构 FILETIME ftLocal; //系统时间结构 SYSTEMTIME st; //调整为系统所在时区的时间 FileTimeToLocalFileTime(lptime,&ftLocal); //将文件时间转换为SYSTEMTIME格式,便于显示 File <a href="https://www.cnblogs.com/dkblog/archive/2013/05/20/3089099.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/dkblog/archive/2013/03/20/2970738.html
python Pexpect - dkcndk
Pexpect 是一个用来启动子程序并对其进行自动控制的纯 Python 模块。 Pexpect 可以用来和像 ssh、ftp、passwd、telnet 等命令行程序进行自动交互。继第一部分《探索 Pexpect,第 1 部分:剖析 Pexpect 》介绍了 Pexpect 的基础和如何使用后,本文将结合具体实例入手,详细介绍 Pexpect 的用法和在实际应用中的注意点。概述通过本系列第一部分《探索 Pexpect,第 1 部分:剖析 Pexpect 》(请参阅参考资料)的介绍,相信大家已经对 Pexpect 的用法已经有了比较全面的了解,知道 Pexpect 是个纯 Python 语言实
2013-03-20T03:03:00Z
2013-03-20T03:03:00Z
dkcndk
https://www.cnblogs.com/dkblog/
【摘要】Pexpect 是一个用来启动子程序并对其进行自动控制的纯 Python 模块。 Pexpect 可以用来和像 ssh、ftp、passwd、telnet 等命令行程序进行自动交互。继第一部分《探索 Pexpect,第 1 部分:剖析 Pexpect 》介绍了 Pexpect 的基础和如何使用后,本文将结合具体实例入手,详细介绍 Pexpect 的用法和在实际应用中的注意点。概述通过本系列第一部分《探索 Pexpect,第 1 部分:剖析 Pexpect 》(请参阅参考资料)的介绍,相信大家已经对 Pexpect 的用法已经有了比较全面的了解,知道 Pexpect 是个纯 Python 语言实 <a href="https://www.cnblogs.com/dkblog/archive/2013/03/20/2970738.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/dkblog/archive/2013/01/21/2870245.html
window驱动 - dkcndk
http://blog.csdn.net/chenyujing1234/article/category/1147469/1
2013-01-21T10:33:00Z
2013-01-21T10:33:00Z
dkcndk
https://www.cnblogs.com/dkblog/
【摘要】http://blog.csdn.net/chenyujing1234/article/category/1147469/1 <a href="https://www.cnblogs.com/dkblog/archive/2013/01/21/2870245.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/dkblog/archive/2013/01/20/2868435.html
什么是MAID存储 - dkcndk
什么是MAID存储MAID,即Massive Arrays of Idle Disks,中文意思为大规模非活动磁盘阵列存储。SNIA对MAID的定义是:A storage system comprising an array of disk drives that are powered down individually or in groups when not required。 MAID storage systems reduce the power consumed by a storage array。MAID技术在磁带库工作模式的基础上提出和发展起来的。磁带库的工作原理是正常状
2013-01-20T04:52:00Z
2013-01-20T04:52:00Z
dkcndk
https://www.cnblogs.com/dkblog/
【摘要】什么是MAID存储MAID,即Massive Arrays of Idle Disks,中文意思为大规模非活动磁盘阵列存储。SNIA对MAID的定义是:A storage system comprising an array of disk drives that are powered down individually or in groups when not required。 MAID storage systems reduce the power consumed by a storage array。MAID技术在磁带库工作模式的基础上提出和发展起来的。磁带库的工作原理是正常状 <a href="https://www.cnblogs.com/dkblog/archive/2013/01/20/2868435.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/dkblog/archive/2013/01/10/2854591.html
Linux性能优化的两个重要参数(参考) - dkcndk
vfs_cache_pressure:该文件表示内核回收用于directory和inode cache内存的倾向;缺省值100表示内核将根据pagecache和swapcache,把directory和inode cache保持在一个合理的百分比;降低该值低于100,将导致内核倾向于保留directory和inode cache;增加该值超过100,将导致内核倾向于回收directory和inode cache。缺省设置:100min_free_kbytes:该文件表示强制Linux VM最低保留多少空闲内存(Kbytes)。缺省设置:724(512M物理内存)改变命令:sysctl -w v
2013-01-10T04:42:00Z
2013-01-10T04:42:00Z
dkcndk
https://www.cnblogs.com/dkblog/
【摘要】vfs_cache_pressure:该文件表示内核回收用于directory和inode cache内存的倾向;缺省值100表示内核将根据pagecache和swapcache,把directory和inode cache保持在一个合理的百分比;降低该值低于100,将导致内核倾向于保留directory和inode cache;增加该值超过100,将导致内核倾向于回收directory和inode cache。缺省设置:100min_free_kbytes:该文件表示强制Linux VM最低保留多少空闲内存(Kbytes)。缺省设置:724(512M物理内存)改变命令:sysctl -w v <a href="https://www.cnblogs.com/dkblog/archive/2013/01/10/2854591.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/dkblog/archive/2012/12/31/2840536.html
Python多线程下的_strptime问题 - dkcndk
由于Python的datetime和time中的_strptime方法不支持多线程,运行时会报错:import datetimeimport threadimport timedef f(): datetime.datetime.strptime("20100101","%Y%m%d")for _ in xrange(3): thread.start_new_thread(f, ())time.sleep(3)Unhandled exception in thread started by <function f at 0x2b52c24e66e0
2012-12-31T05:54:00Z
2012-12-31T05:54:00Z
dkcndk
https://www.cnblogs.com/dkblog/
【摘要】由于Python的datetime和time中的_strptime方法不支持多线程,运行时会报错:import datetimeimport threadimport timedef f(): datetime.datetime.strptime("20100101","%Y%m%d")for _ in xrange(3): thread.start_new_thread(f, ())time.sleep(3)Unhandled exception in thread started by <function f at 0x2b52c24e66e0 <a href="https://www.cnblogs.com/dkblog/archive/2012/12/31/2840536.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/dkblog/archive/2012/12/18/2823736.html
用ethtool确定多网卡Linux服务器网口位置 - dkcndk
在配置有多个网络接口的设备时我们会犯难,eth0、eth1、……到底是那个接口?今天为大家介绍一个小工具,ethtool,他可以帮助你解决这个问题。我使用的机器是Fedora Linux 系统,打开终端,输入ethtool --help 显示帮助信息,下面我就简要介绍一下最常用的两个功能。功能1ethtool DEVNAME 查看相应设备名称对应的设备信息使用方法如下:ethtool eth3回车后显示如下图所示的信息。显示了eth3 的接口类型,连接模式,速率等等信息,方便你找到相应的网卡。(如果是网线Supported ports 就是TP,如果是光纤则显示Fiber)功能2ethtool
2012-12-18T10:35:00Z
2012-12-18T10:35:00Z
dkcndk
https://www.cnblogs.com/dkblog/
【摘要】在配置有多个网络接口的设备时我们会犯难,eth0、eth1、……到底是那个接口?今天为大家介绍一个小工具,ethtool,他可以帮助你解决这个问题。我使用的机器是Fedora Linux 系统,打开终端,输入ethtool --help 显示帮助信息,下面我就简要介绍一下最常用的两个功能。功能1ethtool DEVNAME 查看相应设备名称对应的设备信息使用方法如下:ethtool eth3回车后显示如下图所示的信息。显示了eth3 的接口类型,连接模式,速率等等信息,方便你找到相应的网卡。(如果是网线Supported ports 就是TP,如果是光纤则显示Fiber)功能2ethtool <a href="https://www.cnblogs.com/dkblog/archive/2012/12/18/2823736.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/dkblog/archive/2012/10/20/2732245.html
python元组操作 - dkcndk
今天抽空学习python,对python的元组、列表、字典,参考地址:http://yangsq.iteye.com/blog/128508感觉python的函数用法挺灵活的,和c、php的用法不太一样,和js倒是挺像的。在照着操作时,我发现一个很神奇的现象:>>> t = (1, 3, 'b')>>> q = t + ((3, 'abc'))>>> q(1, 3, 'b', 3, 'abc')这里我预料的应该是(1, 3, 'b', (3, 'abc&
2012-10-20T08:17:00Z
2012-10-20T08:17:00Z
dkcndk
https://www.cnblogs.com/dkblog/
【摘要】今天抽空学习python,对python的元组、列表、字典,参考地址:http://yangsq.iteye.com/blog/128508感觉python的函数用法挺灵活的,和c、php的用法不太一样,和js倒是挺像的。在照着操作时,我发现一个很神奇的现象:>>> t = (1, 3, 'b')>>> q = t + ((3, 'abc'))>>> q(1, 3, 'b', 3, 'abc')这里我预料的应该是(1, 3, 'b', (3, 'abc& <a href="https://www.cnblogs.com/dkblog/archive/2012/10/20/2732245.html" target="_blank">阅读全文</a>