- 浏览: 347171 次
- 性别:
- 来自: 北京
最新评论
-
rushwoo:
这样就可以了: def next(self): ...
python类中的__iter__, __next__与built-in的iter()函数举例 -
rushwoo:
报错啊: for i in Next(3):TypeEr ...
python类中的__iter__, __next__与built-in的iter()函数举例 -
luozhaoyu:
agen_0502 写道mount /dev/yourvolu ...
xen快速创建虚拟机 -
agen_0502:
mount /dev/yourvolumegroup/xen- ...
xen快速创建虚拟机 -
agen_0502:
mount /dev/yourvolumegroup/xen- ...
xen快速创建虚拟机
文章列表
本文源于一时好奇,想要弄清出python的staticmethod()这一builtin方法的实现,查了一些资料(主要是python官方手册了)汇集于此
python在类中,有三种调用method的方法:普通method,staticmethod和classmethod
前两个应该都好理解,classmethod就是在调用这个函数的时候,会把调用对象的class object对象隐式地传进去。咦?这个class object不是一个类型?No,在python里面,class object不像静态语言一样是个类型,它在虚拟机中,就是一个对象
普通method调用需要把自己self作为参数传递,初 ...
当解压osqa并使用
python manage.py syncdb
python manage.py runserver之后,osqa网站仍然不能访问,并报出1146, "Table 'osqa.forum_badge' doesn't exist"错误。则可能是系统存在不同版本python
解决方法是删除不需要的python版本,或者设置系统环境变量,把/usr/local掉到前面。
然后再执行
python manage.py syncdb --all --verbose命令同步数据库即可解决问题。
osqa是一个开源问答的软件,现在的版本是v0.9.0
安装的过程中发现不能使用django1.4,django1.4与其有很多地方冲突。故需要在sites-package文件夹中删除django1.4安装django1.3.1
但是使用django1.3.1之后,出现了ImportError: cannot import name mark_safe错误。
解决办法是修改forum/utils/html.py
from django.utils.safestring import mark_safe
再修改forum/urls.py文件
url(r'^%s(.*)' % _('nimda/' ...
装了一下memcached分布式缓存,需要注意的地方不多,本文记录一下。主要参照平凡的世界写的博文
首先是命名的东西:
memcache——apt-get中不存在这个包,如果指php5-memcache,则是包含了memcache.so的包
memcached——指服务端的daemon。如果指php5-memcached,则此包包含了memcached.so
memcachedb——一个分布式的键值持久化存储系统
libmemcached——memcached的客户端库,包含了libmemcached.so
如果我们要搭建服务端,则服务端必须安装
apt-get install memcach ...
cassandra是facebook开源的著名nosql数据库。因为它和google的big talbe及amazon的dynamo有着千丝万缕的联系,一时好奇,搭建了下简单的双机环境。
cassandra是由java写的,所以需要安装openjdk
如果客户端程序使用cassandra,可以用facebook的thrift这个高性能二进制中间件。
假设有两个客户端:
10.1.1.11/24和10.1.1/12/24
解压之后,创建文件夹,并使之可以被当前用户访问(chown -R)
mkdir -p /var/log/cassandra
mkdir -p /var/lib/cassa ...
好久没写文章了,今天装了一下puppet,是用来管理服务器脚本的软件。
puppet的基本结构和nagios一样,属于C/S形式。
以下称中心服务器为master,被配置的客户端为client。本文使用debian发行版,redhat系也类似。
一、安装必备软件
puppet的必备包要求有ruby,puppet的语言是类ruby的。另外最好安装ntp,统一所有机器的时间
master需要安装
apt-get install puppet puppetmaster
client需要安装
apt-get install puppet
二、配置证书
puppet之间的通讯需要设置ssl的证书 ...
修改记录:
3-29 初稿
介绍完类型与变量之后,就可以开始看程序的主轴了。我们从使用event-test.c入手可以看到的是:(略去之前创建命名管道和socket)
/* Initalize the event library */
event_init();
/* Initalize one event */
event_set(&ev ...
修改记录:
3-28 初稿
3-39 补充了全局变量说明,补充了0.2的内容
libevent是一个高性能的异步处理函数库。使用libevent库的著名软件有chromium、memcached、Tor等等。
网上libevent的中文文档不是很少,其中张亮写的libevent源码分析写得不 ...
个人觉得github蛮好用,但是帮助系统还是不够人性化,东一句西一句,让新手看着头晕。所以稍稍整理下主要的步骤。
首先是在github上创建一个账户:luozhaoyu
然后我个人的主页就是github.com/luozhaoyu了。
然后在github上创建一个test ...
起这个名字的时候心里还是有些小纠结的。最近两周尽在研究lvs+keepalived实现负载均衡更可用的。无奈环境所限,不能找到实际的四台机器,只能在自己的小破本上,琢磨着虚拟出2+2的高可用环境。又因为小本只有2G内存,感觉不 ...
又是一篇“最简”配置……这是因为之前想直接装好2+2模式的lvs+keepalived,并且顺带弄好VIP,结果果断悲剧了,iptables和keepalived配置被我弄得一团糟。今天静下心来,重新先弄1+1的模式好了。
环境说明:
1台director:
eth0:10.1.1.11/24
eth1:10.20.40.2/24
1台real server:
eth0:10.20.40.10/24
网关设置为10.20.40.2
注意,没有virtual IP在此
修改director的内核参数,使其得以转发、重定向等
echo "1" >/proc/sys/ ...
linux套接字bind error问题
- 博客分类:
- C
下午练的linux套接字出了一些毛病,各种错误,先贴出正确代码:
struct sockaddr_in linuxaddr;
linuxaddr.sin_addr.s_addr = htonl(INADDR_ANY);
linuxaddr.sin_family = AF_INET;
linuxaddr.sin_port = htons(12345);
if (bind(fd, (struct sockaddr*)&linuxaddr, sizeof(linuxaddr)) < 0)
{}
首先是确定fd是一个套接字描述符,请先赋值后再比较是否<0,仔细比对括 ...
最简单的Makefile样例。
需要被做成动态链接库的源文件与头文件是getaddrinfo.c和getaddrinfo.so
把它们做成.so之后,与主文件test_getaddressinfo.c一起生成可执行文件main
my: .my-pre
@echo "HELLO! my is starting\n"
.my-pre: getaddrinfo.so
gcc -o main -L ./ test_getaddressinfo.c getaddrinfo.so
@echo STATUS: .my-pre finished
getaddrinfo.so ...
贫僧最近玩上了xen虚拟机,之前用xen搭建了桥接网络。因为我这个虚拟机本是通过virtual box虚拟出来的,所以感觉总有些不对劲。昨天和今天使劲折腾了两天,大概明白了怎样搭建xen的NAT多IP网段的网络……(有些绕,请见谅)
...
在RedHat6下以mysql搭建freeradius稍稍有些麻烦。在Debian上直接apt-get就行了,在redhat下缺少radius-mysql包。
下载编译freeradius需要mysql以及mysql-devel包
./configure --prefix=/
make
make install
配置基础配置文/usr/local/etc/raddb/radiusd.conf
log {
destination = files
file = ${logdir}/radius.log
syslog_facility = ...