自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(71)
  • 资源 (2)
  • 收藏
  • 关注

原创 Ubuntu11.10 禁止触摸板

在Ubuntu下实际上经常要用vim,所以触摸板的用处不大,反倒是很麻烦。怎么禁止呢?网上相关的文章很多,不过都要装一个专门的软件来控制。      于是试着在ubuntu国外论坛上搜索,果然有原生的命令行解决办法,原链接为:https://help.ubuntu.com/community/SynapticsTouchpad      两个步骤:       1.   输入命

2011-11-15 10:36:28 2175

原创 终于明白了SSH免密码登录的原理

事实上,在多台服务器之间操作,免不了scp之类的命令,每次都输入密码很繁琐,而且有些安全系统高的机器,密码相当难记。。后来配置了ssh的免密码登录,类似的教程网上一堆,如http://chenlb.iteye.com/blog/211809只不过一直没明白它的原理,每次用

2011-09-28 16:44:27 13219 2

原创 Web开发中的文件上传问题研究

前因:因为web开发用到文件上传功能,搜索到了Valums,感觉很不错,特别是它在非IE浏览器下通过HTML5技术来支持多文件上传,支持拖拽功能等,不过在具体用中并不顺利,Valums在FF下罢工,追究原因,原来跟我使用Aapche FIleUpload有关,再追究,对文件上传的原理有了新的认识。 1. 文件上传时的抓包 不说理论,先看下对一个基于WEB的文件上传的抓包。在IE7/8下(不要用firefox或者chrome),在http://valums.com/ajax-upload/页面上

2011-05-19 14:42:00 3036 1

原创 那些女子(二)

<br /><br />那些女子(二)<br /> <br />题记:每个人都有为爱痴狂的年纪,我也不曾例外。只不过我没有抓住爱情,我带给别人只是伤害;现在我只为了我的家人、为了我自己而活着。<br /> <br /> <br />Niuniu<br /> <br />她是我初恋的女朋友,生平最了解我的人,最宠我的姑娘,她长相普通,但足够配得上我。从她之后,我就没有过爱情。<br /> <br />Niuniu是我第一个女朋友的小名,不过我从来没这么叫过她,那是属于她父母的专利。她是我高中同学,确切点是高一

2011-03-24 03:06:00 980

原创 伏尔加的鱼

黄依依

2011-03-12 04:16:00 2402

翻译 非阻塞服务器需要注意的主要问题(译)

The main issue with non-blocking servers   非阻塞服务器有一个严重的问题,一些人甚至在没解决这个问题的背景下就开发自己的应用框架(比如Python的Tornado) 当你使用非阻塞服务器的时候,你会获得出色的性能并且不需要担心可扩展性,然而同时你需要意识到一个问题:你的IO调用、网络系统调用也都是非阻塞的吗?很多人忽略了,他们使用的非阻塞服务器,其实是构建在阻塞库之上的。 在这篇文章里,我将深入对比多线程的服务器与非阻塞的服务器分别是如何工作的,以及你之所以

2011-01-19 17:21:00 4288

原创 JMS入门——开发起步之ActiveMQ

J2EE与JMS JMS是J2EE的13种核心技术规范之一,是J2EE众多应用程序组件中的重要一员。J2EE有标准的JMS API开放,以支持各个JMS应用生产厂商的产品,开源的有jbossmq,openjms,mantamq,ActiveMQ等,不过大多已停止发展; 商业的有IBM WebSphere MQ, BEA WebLogic JMS, Oracle AQ等。 Apache ActiveMQ是众多JMS Provider中的的佼佼者,毕竟它由强大的Apache社区支持,一直保持着开发

2011-01-19 13:38:00 3854 1

原创 JMS入门--基本概念

因为学习需要,了解了一些关于JMS的东西,整理一点对自己有用的资料,做个备忘!   JMS是什么? 百度百科是这么解释的:jms即Java消息服务(Java Message Service)应用程序接口是一个Java平台中关于面向消息中间件(MOM)的API,用于在两个应用程序之间,或分布式系统中发送消息,进行异步通信。Java消息服务是一个与具体平台无关的API,绝大多数MOM提供商都对JMS提供支持。 通过以上知道了两点,一是JMS首先是一个开放的标准,已经有不少现成的产品;二是JMS是个分

2011-01-17 16:07:00 1712

原创 脚本基础

时不时地用到各种脚本,因为不频繁,所以在各个脚本间切换很痛苦--基础语法不一致,现在总结一下,留个记录,供以后参考:python:   分支: while True: try: f = open("messages.txt","r") except IOError: print >> sys.stderr, "open file(r) error" time.sleep(2)

2011-01-13 17:40:00 620

原创 金球奖的堕落~

金球奖给了梅西,好吧,梅西是巨星球员,但结合2010年全年的表现,人们有太多的理由来质疑这个评选。就像欧冠赛事的级别高于世界杯一样,金球奖评选的专业程度也远高于世界足球先生,前者由专业的体育媒体记者来评选,后者的评选阵容却囊括了一堆业余人士,援引新浪评论的话说谁也不知道”毛里求斯、阿鲁巴岛、巴巴多斯这些国家的主教练看不看足球比赛”,于是在金球奖评选中落后的梅西凭着强大的世界知名度压倒了哈维,斯内德,笑到了最后,看结果出来一瞬间他的表情,他自己恐怕也不敢相信是自己得奖。一代大师哈维应该是有生之年第一次也是最后

2011-01-11 09:49:00 696

转载 记一笔keep-alive和cache-control

以前看的时候大多走马观花,补补课,记一笔吧。对于静态内容在HTTP Header中设置过期时间和最大时间,可以有效的使浏览器避免下载已经下载过的文件。js,css,图片什么的都是静态内容,都应该考虑cache,但是html不是静态内容。Expires和Cache-Control: max-age是资源终身鲜活的Cache控制。浏览器在过期之前不进行资源的鲜活检查。Last-Modified 和ETag则是对资源的一种描述,属于启发式的Cache控制,浏览器在检查之后再决定使用Cache与否。

2010-12-26 03:32:00 1440

原创 ubuntu 下 tomcat 端口占用而无法启动

<br />由于tomcat异常关闭,再启动就出现端口占用的情况,如下:<br /> <br />ERROR [Http11Protocol] Error starting endpoint<br />java.net.BindException: Address already in use:80<br />at org.apache.tomcat.util.net.JIoEndpoint.init(JIoEnd point.java:500)<br />at org.apache.tomcat.util

2010-11-09 17:37:00 2882

原创 普通的grep,sed命令的扩展模式

普通的grep,sed命令支持通配符*,?等,如果你想使用复杂的pattern,就需要对转义符/,比如$ sed  '//(hello/)/p' -n awktest相应地,sed的-r选项就是为了支持扩展的正则功能类似的grep有egrep(等价于grep -E)

2010-10-27 14:43:00 751

原创 使用linux curses开发控制台的打字游戏

linux curses

2010-09-18 19:22:00 3464 1

转载 进程的虚拟地址空间,堆栈、堆、数据段、代码段

<br />进程的虚拟地址空间,堆栈、堆、数据段、代码段<br /><br />上图是进程的虚拟地址空间示意图。<br />堆栈段:<br />  1. 为函数内部的局部变量提供存储空间。<br />  2. 进行函数调用时,存储“过程活动记录”。<br />  3. 用作暂时存储区。如计算一个很长的算术表达式时,可以将部分计算结果压入堆栈。<br />数据段(静态存储区):<br />  包括BSS段的数据段,BSS段存储未初始化的全局变量、静态变量。数据段存储经过初始化的全局和静态变量。<br />代码

2010-09-13 21:33:00 804

原创 利用劝告锁实现程序只运行一次

<br />1.  由于需要,一个业务程序一天之中可能要被多次使用,但同一时间只能有一个人使用,于是我们得想个办法保证互斥。<br />     进程间通信有很多种方式,信号量就不错。但学习使用下文件锁,更简洁一点。<br /> <br />2. 文件系统级别的锁有四种,最基本的两种是劝告锁和强制锁,剩下的两种是强制锁的变种。<br />     应用级别上对锁的操作有两种,加读锁,或者加写锁(又叫共享锁与独占锁)。<br />     那么,平时所说的加锁,实际上应该是在劝告锁或者强制锁上加读或者写锁。<

2010-09-13 16:31:00 1557

原创 关于BM算法的一些思考

1. 什么是BM算法?   见  A Fast String Searching Algorithm, with R.S. Boyer. Communications of the Association for Computing Machinery,   是Boyer于1977年发表的一个算法,用于字符串匹配。2. 与KMP算法相比?  与经典的KMP算法相比,BM算法在很多情况下效率更高,它有两个特点:  一是它在遍历正文时的平均比较次数与pattern的长度反比,这一点很历害。  二是它在处理大字母

2010-08-12 14:54:00 7023 7

原创 memcached源代码分析

ppt已打包上传到:http://download.csdn.net/source/2588817感触最大的是1。对libevent库的多线程使用2。各种池的概念,内存池,线程池,反正为了效率,一切操作都是"一次申请,重复利用"

2010-08-01 12:00:00 659

原创 别了,皮尔洛!

<br />这恐怕是32岁的皮尔洛参加的最后一届世界杯了,作为当今世界为数不多的技术型后腰之一,优雅无双沉稳内敛的皮尔洛是意大利足球自巴乔之后最大的惊喜。作为AC米兰和意大利国家队的绝对核心,他也是我心目中意大利足球唯一的看点。不同于丑陋的法国式的出局,意大利的出局令人叹惋不已,即使到最后一秒钟,我仍期望着奇迹的发生。我从没指望现在这支几乎是06年夺冠的原班人马能再创奇迹,但我更愿意他轰轰烈烈地像战士一样死于淘汰赛,而不是如此悲壮地倒在小组赛。因为我期待着伤愈的皮尔洛在世界杯上最后的天鹅舞曲。<br /> 

2010-06-25 14:48:00 898

原创 ubuntu下使用glibtop监测多核cpu之利用率

多核CPU使用率 linux glibtop

2010-06-21 19:11:00 4998 2

原创 libevent主要的数据结构(一)

(草草看了下,记录下来,作为以后的参考)libevent实现了网络IO,timer,signal的事件触发机制. 可以很方便的应用于event-driven服务器中,作为其底层事件处理模块. 比较成功的案例有 memcache(分布式缓存), PLB(负载均衡器)等.1. 用户需要完成的回调函数的定义void (*ev_callback)(int, short, void *arg);这个回调函数的参数的意思为:参数1: 表示触发事件的文件句柄,比如一个socket对象.参数2: 表示事件发生的结果,可能是

2010-06-17 15:34:00 1866

原创 libevent是如何与具体事件引擎进行结合的--以select为例

<br /> <br />先总体说下select引擎与libevent结合的过程(其它引擎是同样的道理)<br /> <br /> /*我们使用libevent的一般调用流程如下:(base->evsel是全局的事件引擎,其数据结构见下面2.相关的数据结构)<br /> 0. 全局初始化event_init()--决定使用哪个引擎;<br />event_init()引用event_base_new(),后者关键片断在于:<br />for (i = 0; eventops[i] && !base->evb

2010-06-17 14:57:00 2789 1

原创 那些女子(一)

那些女子(一) 题记:一个古老的断言--爱情是永恒的主题。但这里却与爱情无关,因为它不曾发生过。 在大学里,我曾经有幸接触过数位特立独行,有血有肉的女孩子,我们谈天说地,也聊过生活理想,虽然大部分未曾谋面,我惊讶并折服于她们的才识她们的不同凡响,她们的激情和个性甚至令我汗颜。我得承认我曾迷恋过她们其中的每一位,这不是说我多浪漫,而是她们令我一生难忘。离开学校,离开了天津,我会突然因

2010-01-14 09:21:00 1167 2

转载 艺人评价黄家驹与他的BEYOND乐队

艺人评价黄家驹与他的BEYOND乐队 2009年09月21日 08:56:17   新浪博客     罗大佑:香港没有真正的音乐人,除了黄家驹。这样的人降临在人世间本来就是奇迹,上帝不会再派一个音乐天使下凡了。  刘卓辉:他为什么去了一趟肯尼亚,回来就能写出《光辉岁月》和《Amani》?除了天才,还

2009-09-29 20:44:00 2031 2

原创 Lighttpd导入Eclipse, 进行编译,调试等开发工作

  Eclipse IDE for C/C++ Developers, Build id: 20090619-0625   A. 解压源代码tar.gz包  B. 进入解压后主目录,运行./configure(如果出错,参照附录1解决),生成Makefile文件  C. 打开Eclipse,File->New->C Project->Makefile Project->Empty

2009-08-26 10:14:00 1273

转载 C/C++的变量存储问题

一.首先, 在c中分为这几个存储区 1.栈 - 由编译器自动分配释放 2.堆 - 一般由程序员分配释放,若程序员不释放,程序结束时可能由OS回收 3.全局区(静态区),全局变量和静态变量的存储是放在一块的,初始化的全局变量和静态变量在一块区域,未初始化的全局变量和未初始化的静态变量在相邻的另一块区域。- 程序结束释放 4.专门放字符串常量的地方。- 程序结束释放

2009-08-25 19:52:00 2472 1

原创 心愿

  王泽(左一,以下依次为:)、杨颖(副歌独唱)、乔媛(副歌伴唱)和唐景莲(副歌的底音)   1998年冬,在中央民族大学一间教室里演唱 

2009-08-03 21:08:00 939

原创 硬盘安装Opensuse11.1

Opensuse11.11.  安装尝试Opensuse11.1-livecd-x86_64等所有livecd版的安装,均没有成功,用尽了网上的各种方法。列出最终的出错:….Mounting compressed unified .Failed to mount read only systemFailed to mount root filesystem

2009-08-02 18:25:00 1421

原创 编译安装ibus输入法

因为用OpenSuse自带的源安装ibus不能使用五笔输入法,只好自己下载源代码然后编译安装  到http://code.google.com/p/ibus/downloads/list上下载几个包:   1,ibus-1.1.0.20090612.tar.gz, 2,ibus-pinyin-1.1.0.20090612.ta

2009-08-02 18:02:00 2153

转载 linux里命令pkg-config工具的使用

一、编译和连接        一般来说,如果库的头文件不在 /usr/include 目录中,那么在编译的时候需要用 -I参数指定其路径。由于同一个库在不同系统上可能位于不同的目录下,用户安装库的时候也可以将库安装在不同的目录下,所以即使使用同一个库,由于库的路径的不同,造成了用 -I 参数指定的头文件的路径也可能不同,其结果就是造成了编译命令界面的不统一。如果使用 -L参数,

2009-08-01 21:05:00 526

原创 硬盘安装Kubuntu9.10

<!-- @page { margin: 2cm } P { margin-bottom: 0.21cm }-->        闲来无事,在我的双系统(xp,centos5.3)上再硬盘安装一个Kubuntu9.10玩玩。 当前系统情况是:C盘装了xp,通过C盘上的grub4dos引导centos5.3,而

2009-07-29 17:24:00 4000

转载 CentOS支持NTFS

How to Mount an NTFS Filesystemhttp://wiki.centos.org/TipsAndTricks/NTFS [Note: if you are running a centosplus kernel, see this section]  Installing required packages" src="http:/

2009-07-29 11:42:00 1954

转载 理解编译预处理

预处理语句格式:    #command name(...) token(s)1,command预处理命令的名称, 它之前以#开头, #之后紧随预处理命令, 标准C允许#两边可以有空白符, 但比较老的编译器可能不允许这样.若某行中只包含#(以及空白符), 那么在标准C中该行被理解为空白. 整个预处理语句之后只能有空白符或者注释, 不能有其它内容.2, name代表宏名称

2009-07-28 08:52:00 777

原创 一个简单的Squid服务器

本文参考http://blog.s135.com/book/squid/chap07.html#a13,基本上是一步步照做 一、服务器主机: CentOS5.3   159.226.3.209          局域网环境: 网络设置:172.16.2.*/24   网关:172.16.2.254        说明:由于局域网所用网关已另行设置好,故服务器主机与局域网事先已经

2009-07-27 15:05:00 1747

原创 PXE系列之四:PXE无盘LINUX工作站

PXE系列之四:PXE无盘LINUX工作站 (一)概念: 无盘引导,本机无硬盘,从pxe服务器上把一个小小的内核通过tftp传到客户端,运行于其内存中,这种应用 往往还需要一个存在于某个文件服务器上的文件系统(可以与pxe服务器相同),对于客户端来说,尽管这个文件系统是远程的,但用起来跟自己本地文件系统一样。     无盘引导需要:      服务器端(所有

2009-07-19 21:41:00 10374

原创 PXE系列这三:制作根文件系统

PXE系列这三:制作根文件系统 (一)过程 利用现有的正常运行的文件系统(我这里是Centos5.3)来生成我们所需要的文件系统, 首先cd 到根目录下:#  cd  /     然后,把/etc /bin /sbin /usr /lib /lib64 /dev /var都拷贝到指定目录:        我这里是/home/centos_rootfs,以拷贝/b

2009-07-19 21:31:00 4632

原创 PXE系列之二:内核编译与配置

PXE系列之二:内核编译与配置  (一)编译配置时应选中以下模块:(适用2.6.30版本)      执行make menuconfig 后,找到以下选项: 1. Networking support -> Networking options -> IP:kernel level autoconfiguration      将其下的IP:dhcp support

2009-07-19 21:24:00 4372

原创 PXE系列之一:PXE环境搭建

(一)原理   简单说来,PXE服务器就是DHCP服务器+TFTP服务器。网络启动过程大概是这样的(可能并不严谨):客户端发送动态获得IP地址的广播包到网络上,DHCP服务器在收到该广播包后,发送给客户端分配IP地址的回应包,客户端收到回应包后设置自己的IP地址,然后从DHCP服务器获得启动服务器的IP地址(DHCP服务器066选项,这就是TFTP服务器的IP地址)及启动文件名(DHCP服

2009-07-18 15:19:00 23049 1

原创 双系统重装windows后,用grub4dos引导ubuntu9.04的最简洁方法

 我的系统上最初装了windows,等ubuntu9.04出了之后,马上装了个体验。后来不巧,windows出了故障,没想那么多用ghost还原系统,于是以前的mbr被windows重写了,ubuntu进不去了。解决办法: 1. 在windows下,下载一个新版本的grub4dos,具体安装(把几个文件拷到C盘下)网上有。2. 把C盘下的那个boot.ini文件最后加入一行:

2009-06-26 15:04:00 10296 1

原创 金满《闪亮的日子》

《闪亮的日子》—金满       金庸小说、水浒传之后,我已经很久很久没再读过像样的横行江湖,快意恩仇的长篇了。只能偶尔从一些京味或津味的民间传奇,史书列传之类中寻出点滴的情节,聊以呷趣。几天前在图书馆里随意翻书,竟拾获一部不错的小说—金满的《闪亮的日子》。       最初想着跟罗大佑那首有名的歌曲有无关系,不曾想封面上赫然

2009-06-23 01:25:00 8376 3

ubuntu上安装dropbox所需文件

ubuntu上安装dropbox所需文件 1. nautilus-dropbox_0.6.3_i386.deb 2. dropbox-lnx.x86-0.7.110.tar.gz

2010-08-31

memcached源代码分析

memcahced源代码分析,两个文件 1个是基本数据结构(.txt) 1个是分析ppt

2010-08-01

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除