http://abloz.com
author:ablozhou
date:2012.4.5
python 如果打印到秒,可以用如下语句:
>>> import time
>>> time.localtime(time.time())
time.struct_time(tm_year=2012, tm_mon[......]

#http://abloz.com
#author:ablozhou
#date:2012.3.31
python可以用mixin方式做插件。limodou著名的ulipad python编辑器就采用这种插件机制。mixin是一个类,该类的一些属性和方法,可以传给继承的类。一些支持多继承的面向对象脚[......]

http://abloz.com
author:ablozhou
date:2012.3.31
实验中,用twisted的iocp,和服务器建立多个tcp长连接。然后持续发送较小的包。如果压力较小时,系统表现很正常。当压力较大,如建立3000个以上的连接,持续发送较小包,就会有包出错。
相同程序,改[......]

http://abloz.com
author:ablozhou
date:2012.3.29
环境
cat /etc/redhat-release
CentOS release 5.5 (Final)
下载
wget http://protobuf.googlecode.com/files/pro[......]

http://abloz.com
author:ablozhou
date:2012.3.29
环境准备
centos缺省安装的python 是2.4的,可以安装兼容的最新版本python 2.7.2
下载源码:Python 2.7.2 compressed source tarball (for [......]

#http://abloz.com
#author:ablozhou
#date:2012.3.27
windows 的socket的select,缺省只有512个。所以一个进程最多建512个连接。如果要建更多,就要用到完成端口IOCP。
twisted 缺省的reactor是只能建512个连接的,[......]

http://abloz.com
author:ablozhou
date:2012.3.27
python 自带logging模块,功能和log4cpp,log4j差不多。可以用logging.conf来写log需要输出的格式和相关配置。
下面是我的一个配置文件。其中的TimedRotatingF[......]

python 没有switch语法,用if,else代替或用dict代替。
dive into python第三版有一个分析mp3文件tag的例子:
tagDataMap = {“title” : ( 3, 33, stripnulls),
“a[......]

如,想将-1打印成0xffffffff,结果是:
>>> a=-1
>>> hex(a)
‘-0×1′
>>> print “%u”%a
-1
>>> print “%x”%a
-1
>>> print hex[......]

google protobuf由于采用二进制打包,数据量很小,又支持主流的java,c,python语言,所以尤其适合于mobile客户端与服务器的通信。相对于xml,html,json等格式,有其独特优势。
下载:http://code.google.com/p/protobuf/download[......]

近期评论