分类目录归档:Linux

如何让多个进程监听同一个TCP端口

通常我的服务器上都会启用多个php-cgi程序,有时候这样做是很必要的

1. 可以同时让多个进程处理请求,负载均衡。
2. 避免一个进程崩溃时,在重新启动前,无法及时提供服务。

启用多个相同服务进程必然需要考虑共用一个socket。对于php-cgi程序来说,是通过stdin文件描述符来传递这个socket。

工作原理如下:
继续阅读

修复KDE桌面

不知道从哪一天开始,我发现我的KDE桌面的面板不再半透明了,移动窗体也不会半透明了。桌面面板的背景还是一团很糟糕的黑色,难看死了。
我在网上搜索KDE non-transparent panel等,没有找到任何有用的解决方案,所以最后还是自己瞎折腾!!!

1、首先,我注销掉KDE桌面,然后按Ctrl+Alt+F5使用终端登录,这样就不会启动KDE桌面。我把主目录下的”.kde”改名,然后回到图形界面里登录用户,KDE的半透明效果好了,恢复到了默认的KDE桌面,很干净。包括电源管理、网络连接的方案、桌面插件都没有了。

2、注销KDE桌面,回到终端。把改名后的.kde目录复制一份,然后把~/.kde/share/config/下的某些项目尝试删除,然后在图形界面登录,看看面板透明的问题有没有解决。

3、最后发现,删除了~/.kde/share/config/plasmarc之后,面板透明问题就解决了。

PS,导致KDE桌面无法半透明的问题,是我舍友改动了我的桌面效果设置引起的,他看到此博文自己来自首了!

My First OpenGL Application (Using PyOpenGL)

这个应该是OpenGL的hello world了。

上计算机图形学的老师还花了两节课去给同学讲解怎么在windows安装配置opengl,以及怎么编写第一个opengl程序。其实,如果用Ubuntu+Python,只需要安装一个python-opengl就行了。

apt-get install python-opengl

然后编写以下几行代码运行:
继续阅读

Python小程序: ServerInformation

监听一个端口,提供HTTP接口,通过访问Web地址,调用程序获取各种信息。

例如,想在远程服务器上执行free命令查看远程服务器的内存使用情况,

free -m 的base64编码为 ZnJlZSAtbQ==,则访问下面的地址:

http://xiaoxia.org:10000/ZnJlZSAtbQ==

提交之后返回类似于下面的结果,

             total       used       free     shared    buffers     cached
Mem:           118        114          4          0          3         36
-/+ buffers/cache:         74         44
Swap:          255         56        199

为了安全使用,在CommandList文本文件里保存着一个命令列表,即可以允许调用的程序。

ps aux
free -m
netstat -na
cat /proc/meminfo
cat /proc/cpuinfo

继续阅读

均衡一下负载,把mysql移到了另外一个vps

博客的vps,因为运行太多的应用,包括mysql、php-cgi、webserver、ftpd、pptpd、fox3、smtpd等,物理内存使用早已经超过总内存128MB,swap也用了50多MB,所以出现了访问网页经常因为IO读写而卡一会儿的问题。

前几天,在EMSVPS上申请了一个35元的,跟我现在博客服务器用的配置基本相同的vps。就是这个价钱太小了,还是xen vps,让我担心会不会经常出问题,所以先用一段时间,目前用作负载均衡,分担了内存占用大,运行又慢的mysql服务器。

主服务器上的内存使用状况:

http://xiaoxia.org:10000/ZnJlZSAtbQ==

辅服务器上的内存使用状况:

http://xsign.org:10000/ZnJlZSAtbQ==

继续阅读

节约网络流量的方案和NetworkMonitor提示小程序

Firefox安装节省流量方案的插件:

Adblock: 拦截网页广告的下载
Flashblock: 拦截Flash自动下载播放 ,通过鼠标点击来下载播放Flash程序。
ImgLikeOpera: 拦截图片的自动下载显示,通过鼠标点击来加载需要下载显示的图片。

NetworkMonitor小程序:

随时查看使用流量:

当使用超过1MB流量时,显示警告信息:

继续阅读

Ubuntu下使用E261接入wcdma的3gnet

两张手机卡的2g上网流量都差不多被我用完了,两张卡的上网套餐加起来30元,流量加起来220MB,贵的要命,不过要上网没办法。本地搜到的一个wifi用WPA2加密不会破解撑网。前些天雨天路过一间小小的联通营业厅,看到有36元的800MB本地流量套餐,心动了就决定办一个,用超了流量1毛钱1MB总比GPRS的1块钱1MB好。中午在营业厅里,技术人员在我笔记本的Win7系统上测试,插上华为E261的3g modem,装了一堆驱动程序和一个联通的网络拨号软件,跑起来占CPU和内存异常的高。不过,看到能够打开网页了,速度挺乐观的,还真叫人开心。不过那个流量实在是跑得太快了,打开某门户网站的页面就去了几MB。

回去自己在Ubuntu上试试,按照网上的说法,应该要安装一个usb-modeswitch,然后写个配置文件。但实际操作却大吃一惊,刚把E261插进电脑,就识别出GSM Modem了,然后网络连接里多了一个新建GSM连接的选项。


继续阅读

无聊入门一下传说中的验证码识别技术,学习笔记

背景

笔记本硬盘坏了,数据没了,盘里面的数据价值肯定超过联想数据恢复的RMB1500高价,不过当时身五分银,还是算了。。。
新硬盘需要重装很多东西,今晚在群里看到给宿舍评分的给力投票,网址上的验证码做得很水,想涉足一下传说中的验证码识别技术!


继续阅读

MyQQ3.30发布

声明
MyQQ is a cross-platform library for communication which uses a TencentQQ-like protocol to communicate with friends on the Internet. It can work well now and maintained by Xiaoxia.

Current Version: 3.30
Protocol Verison: 2011 Beta2

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!WARNING!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
myqq3是个实验品,仅供研究和探讨,勿用于其他用途。它的不稳定性以及时效性可能会导致灾难性的后果!!!

Win32 & Win64 Package 下载
myqq3.30

Source Code:
See http://code.google.com/p/myqq3/
继续阅读