- 博客(82)
- 收藏
- 关注
原创 hadoop eclipse 插件
弄了好久。虽然现在已经出了hadoop 1.0.3,但是没有对应的eclipse插件。好像还要自己编译。所以我还是用hadoop 0.20.2吧。环境:ubuntu 10.10hadoop 0.20.2eclipse helios j2ee伪分布模式配置:1. 先解压hadoop 0.20.2,修改 conf/hadoop-env.sh,把JAVA_HOME指向
2012-07-03 19:39:40
889
转载 利用memcached构建高性能的Web应用程序
面临的问题对于高并发高访问的Web应用程序来说,数据库存取瓶颈一直是个令人头疼的问题。特别当你的程序架构还是建立在单数据库模式,而一个数据池连接数峰值已经达到500的时候,那你的程序运行离崩溃的边缘也不远了。很多小网站的开发人员一开始都将注意力放在了产品需求设计上,缺忽视了程序整体性能,可扩展性等方面的考虑,结果眼看着访问量一天天网上爬,可突然发现有一天网站因为访问量过大而崩溃了,到时候哭
2012-06-12 12:49:52
954
转载 PHP & memcached
肖理达 (KrazyNio AT hotmail.com), 2006.04. 06, 转载请注明出处一、memcached 简介在很多场合,我们都会听到 memcached 这个名字,但很多同学只是听过,并没有用过或实际了解过,只知道它是一个很不错的东东。这里简单介绍一下,memcached 是高效、快速的分布式内存对象缓存系统,主要用于加速 WEB 动态应用程序。二、memcach
2012-06-12 12:47:55
557
转载 二叉树的非递归前序、中序以及后序遍历C++模版类实现
#include using namespace std;/////////////////////////////////////////////////////////////////////////stack template class Stack{public: Stack(int size = 50); ~Stack(); void push(T* data);
2012-06-11 09:28:54
943
原创 kmp
假设要在字符串t中寻找s,那么next[i]=j 表示,如果s[i]与t[k]匹配失败,下次就让s[j]跟t[k]匹配。也就是说,其实在s中,s[i-1]==s[j-1], s[i-2]==s[j-2]。。。这样,在计算next时,先找到与s[i]相等的那个位置j。然后,i++,j++,让next[i]=j。void computeNext(char* s){ int i=0,
2012-05-23 15:56:25
562
转载 Autotools Tutorial
http://www.developingprogrammers.com/index.php/2006/01/05/autotools-tutorial/Autotools are the set of GNU tools that configure their source packages for a particular computer system. If you have
2012-05-16 20:23:27
781
原创 thttpd 安装
1. 如果编译出现getline的错误,就把htpasswd.c中两处getline替换为my_getline2. groupadd www '添加一个组wwwuseradd -g www -d /home/www/ -s /bin/bash thttpd '添加一个用户thttpd3. ./configuremakesudo make install4. 写一个配置文件vim
2012-05-15 13:28:52
1314
原创 Memecached 线程模型
1. main函数中调用thread_init(),初始化setting.num_threads个worker线程以及一个主线程dispatcher_thread。每个worker线程用pipe创建一个管道,并注册libevent事件,当管道的读端可以读时,就调用thread_libevent_process()函数。thread_libevent_process()做的事情等下再说。
2012-05-03 19:29:05
1048
转载 Memcached内部协议解析(ascii_prot)
Memcached的客户端和服务器之间通过TCP连接进行通信。(UDP方式也是可以的,详细信息见本文最后的"UDP protocol"解析)。运行中的memcached服务器监听在一些(可配置的)端口上;客户端通过连接到该端口,可以向服务器发送命令,读取应答,最后在关闭连接。 Memcached服务器不必发送任何命令来结束会话,这个工作仅仅由客户端来执行,当它不再需要该连接的时候。注意
2012-05-03 16:22:54
1539
原创 The Clocks
http://ace.delos.com/usacoprob2?a=aTRAhrlUGW0&S=clocks有9个时钟,每个时钟的表针只能指向上、下、左、右四个位置。有9种操作方式,每种操作方式可以使某几种时钟顺时针旋转90度。要求使用最小的操作次数,让这所有9个时钟都指向上面。USACO给出的分析:Notice that the order in which we apply
2012-04-14 22:27:07
616
原创 运算符的优先级
括号成员第一 // [] ()全体单目第二乘除余三加减四移位五,关系六 //移位 >> 等于不等排第七 // == !=位与异或和位或 // 位运算, & ^ |逻辑或跟与 // 逻辑运算符&& ||条件高于赋值逗号运算符最低优先级运算符名称或含义使用形式
2012-04-12 13:59:43
604
转载 Linux守护进程的编程实现
Linux 守护进程的编程方法 守护进程(Daemon)是运行在后台的一种特殊进程。它独立于控制终端并且周期性地执行某种任务或等待处理某些发生的事件。守护进程是一种很有用的进程。Linux的大多数服务器就是用守护进程实现的。比如,Internet服务器inetd,Web服务器httpd等。同时,守护进程完成许多系统任务。比如,作业规划进程crond,打印进程lpd等。 守护进程的编程本
2012-03-26 15:16:45
567
转载 iPhone的Push(推送通知)功能原理浅析
转自:http://xiaolife.com/wordpress/an-introduce-to-iphone-push/第一部分:Push原理(以下绝大多数内容参考自、图片来自iPhone OS Reference Library)机制简介Push 的工作机制可以简单的概括为下图图中,Provider是指某个iPhone软件的Push服务器。 APNS
2012-02-26 10:53:09
946
转载 正确实现二分查找
写二分的时候经常要测试好久边界问题。有人给出了一个一般使用的方法http://blog.csdn.net/v_july_v/article/details/7093204//right=n-1 => while(left right=middle-1;//right=n => while(left right=middle; int binary_search(
2012-02-16 15:36:49
782
转载 Clustered Index and Non-Clustered Index
Clustered Index Vs. Non-Clustered Index In SQL Serverhttp://www.devtoolshed.com/content/clustered-index-vs-non-clustered-index-sql-serverThose new to SQL Server performance tuning or datab
2012-02-09 16:28:25
1938
原创 TinySQL 使用
准备分析下TinySQL,所以先用用看。文档不多。下面都是摸索的。1、首先是如何在命令行里运行。java -cp tinySQL-2.26.jar com.sqlmagic.tinysql.tinySQLCmd然后就可以通过HELP COMMANDS查看它支持的命令了。创建一个表的sql为create table test (ID INT, NAME CHAR)2、
2012-01-16 21:47:51
1933
原创 C++ 中的单例模式 普通,2B, 文艺
一、普通Singleton#includeusing namespace std;class Singleton{ public: static Singleton* getInstance(); private: static Singleton* instance; Singleton()
2012-01-09 13:07:50
1308
1
原创 similar to inotify on Windows
If you're using .net, use FileSystemWatcher. More info here: http://msdn.microsoft.com/en-us/library/system.io.filesystemwatcher.aspxIf you're using C, use FindFirstChangeNotification, FindNextCha
2012-01-05 21:35:29
4710
原创 openduckbill 异常
今天使用了openduckbill由于openduckbill最近没有更新,而pyinotify更新了,所以导致openduckbill出现异常 AttributeError: type object 'EventsCodes' has no attribute 'IN_CLOSE_WRITE'解决办法,打入以下patchdiff -ruN openduckbi
2012-01-05 21:29:02
1558
原创 GCC 编译出错 /usr/bin/ld: cannot find -lc
先用locate 找到 libc.so的位置。然后把libc.so拷贝到/usr/local/lib目录中
2012-01-02 14:00:06
7507
3
原创 Boost编译
bjam.exe stage --build-type=minimal --with-date_time --with-filesystem --with-program_options --with-regex --with-serialization --with-system --with-thread toolset=msvc-10.0 debug release link=static
2011-12-30 11:27:02
993
原创 STL map与Boost unordered_map
今天看到 boost::unordered_map, 它与 stl::map的区别就是,stl::map是按照operator<比较判断元素是否相同,以及比较元素的大小,然后选择合适的位置插入到树中。所以,如果对map进行遍历(中序遍历)的话,输出的结果是有序的。顺序就是按照operator< 定义的大小排序。而boost::unordered_map是计算元素的Hash值,根据Hash值
2011-12-24 11:05:59
44825
6
原创 Boost::lexical_cast
Boost 提供了lexical_cast, 可以方便地在string和int, double, float, long之间相互转化。再也不用sprintf或者atoi了用法string s = lexical_cast(123.12);看Boost的实现,其实是用了stringstream。 如果写的简单点,什么异常都不考虑,可以实现如下template Target le
2011-12-23 22:40:59
1072
1
原创 STL iterator traitor
迭代器的型别(associated types)是泛型编程中经常用到的一种技术。由于C++是一种弱类型语言,不支持typeof()。 虽然可以用RTTI中的typeid(), 获得的也只是型别的名称,不能用于声明变量。解决方法可以用模板函数的参数推倒(argument deducation)#includeusing namespace std;templatevoid fun
2011-12-12 21:27:01
1002
1
原创 STL auto_ptr
先贴下auto_ptr的SGI实现/* * Copyright (c) 1997-1999 * Silicon Graphics Computer Systems, Inc. * * Permission to use, copy, modify, distribute and sell this software * and its documentation for any pu
2011-12-08 21:13:35
732
原创 log4cplus 链接不成功
今天想用log4cplus ,但是建了一个项目测试,一直提示链接不成功,原来是字符集的问题。在项目属性-> General->Character Set 选择 Use Multi-Byte Character Set
2011-11-30 19:03:36
1582
1
原创 创建和使用动态连接库
摘自http://msdn.microsoft.com/zh-cn/library/ms235636.aspx一、创建动态连接库1. 创建一个dll项目2. 添加一个名为“MyMathFuncs”的简单类,以执行常见的算术运算,如加、减、乘和除。 代码应与以下内容类似: 示例代码// MathFuncsDll.hnamespace MathFuncs{
2011-11-30 18:49:34
1272
1
原创 创建和使用静态库
摘自 http://msdn.microsoft.com/zh-cn/library/ms235627.aspx一、创建静态库1、创建一个项目,项目类型选择“静态库”2、选择预编译头文件3、示例代码// MathFuncsLib.hnamespace MathFuncs{ class MyMathFuncs { public:
2011-11-30 14:14:33
1463
转载 Java 泛型数组
Java 不支持泛型数组。也就是说,List[] ls = new ArrayList[10];是不支持的,而List[] ls = new ArrayList[10]却可以。是我一直不清楚为什么不能够声明泛型的数组,指定类型可以让编译的时候不会出现类型安全的提示。直到今天我看到Sun的一篇文档才清楚,里面提到了一种情况:List[] lsa = new
2011-11-27 20:19:49
40035
3
转载 深入理解C语言
#include void foo(void){ int a; printf("%d\n", a);}void bar(void){ int a = 42;}int main(void){ bar(); foo();}你知道这段代码会输出什么吗?A) 一个随机值,B) 42。A 和 B都对.如果你使用一般的编译,会输
2011-11-22 11:23:27
987
原创 Java Runtime
有一个exe文件,用法是 1.exe -t "...." , 它会把结果输出到控制台。 我想在程序里面调用它,并拿到输出结果。import java.io.BufferedReader;import java.io.BufferedWriter;import java.io.FileReader;import java.io.FileWriter;import java.i
2011-11-11 12:04:25
530
原创 C++中多维数组做参数
C++中多维数组做参数,第二维或者更高维的维数不能省略。例如,可以void Func(int array[3][10]);void Func(int array[][10]);但是不可以void Func(int array[][]);这是因为,在内存中,多维数组的存放(一般是按行存放)并不区分行和列,因此,如果不知道第二维或者更高维编译器就不知道有多少行多少列,就没法寻址。
2011-11-09 14:53:28
873
转载 JQuery对象与DOM对象
开始以为jquery的$("#id") 与 js的document.getElementById("id")是一样的。但是当我对select使用selectedIndex属性的时候,发现前者不可以,而后者可以。原来,jquery的$("#id")返回的是一个jquer
2011-10-08 10:50:12
425
转载 Java异常处理的陋习展播
在下面这段代码中,你能够迅速找出异常处理的六个问题吗?1 OutputStreamWriter out = ...2 java.sql.Connection conn = ...3 try { // ⑸4 Statement stat = conn.createSta
2011-09-16 23:38:09
451
原创 数据库初步
创建一个表people,id列设为主键,且自动递增在mysql中,create people (id int not null primary key auto_increment, name varchar(20), sexvarchar(20))在sql se
2011-09-01 09:46:25
512
原创 手工创建 Strut2 应用
Tomcat的webapps文件夹下面的文件结构如下图struts2qs|----WEB-INF| |----classes(struts.xml , LoginAction.class)| |----lib(struts2-c
2011-08-07 16:53:25
753
原创 java 命令行编译多个包
文件目录如下,project下有个src和classes目录,src里面有com/example/model/1.java com/example/web/2.java 。 现在,2.java要用1.java, 所以就import com.example.mode
2011-08-06 11:41:47
3676
原创 Python 字符串前面加'r'
在Python的string前面加上‘r’, 是为了告诉编译器这个string是个raw string,不要转意backslash '\' 。 例如,\n 在raw string中,是两个字符,\和n, 而不会转意为换行符。由于正则表达式和 \ 会有冲突,因此,当一个字符串使用了
2011-07-30 08:09:47
67695
11
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人