自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(129)
  • 资源 (9)
  • 收藏
  • 关注

原创 C++ 空类,默认产生哪些成员函数

C++ 空类,默认产生哪些成员函数。     默认构造函数、默认拷贝构造函数、默认析构函数、默认赋值运算符 这四个是我们通常大都知道的。但是除了这四个,还有两个,那就是取址运算符和 取址运算符 const即总共有六个函数。    一个示例如下: 1: class Empty 2:   3: { 4:   5: public:

2013-08-30 15:46:32 1474

原创 linux 下的多线程编程

Linux 下POSIX线程  使用threadid标识一个线程。创建线程的函数如下: 1: #include 2: 3: int pthread_create( 4: pthread_t *restrict tidp, 5: const pthread_attr_t *restrict attr,

2013-08-29 09:31:01 702

转载 理解Linux系统负荷

写在前面:    看到的一篇讲系统负载很生动很清晰的文章,阅读之后对于系统负载一下子豁然开朗。收录下,以供以后翻阅。一、查看系统负荷  如果你的电脑很慢,你或许想查看一下,它的工作量是否太大了。  一般在Linux系统中,我们使用uptime命令(w命令和top命令也行)。(另外,它们在苹果公司的Mac电脑上也适用。)  你在终端窗口键入uptime,系统会

2013-08-28 09:50:39 705

原创 TCP 连接的建立和终止

TCP连接的建立    三次握手服务器端准备好接收外来的链接,通过该socket、bind、listen3个函数完成,为被动打开客户端通过connect函数主动建立连接,通过发送一个SYN(带序号)服务器确认(ACK)客户的SYN,确认序号为服务SYN的序号加1,同时发送一个SYN(带序号)客户端确认(ACK)服务的SYn,确认序号为服务SYN的序号加1.   如上就是我们

2013-08-25 22:21:24 880

原创 KMP 算法学习

KMP算法是用来做字符串匹配的。关于字符串匹配,最简单最容易想到的方法是暴利查找,使用双重for循环处理。该方法的时间复杂度为O((n-m+1)*m) (n为目标串T长度,m为模式串P长度, 从T中寻找是否有P串存在)。暴利的问题是在匹配中没有利用之前比较的信息。而这些信息可能是非常有用的。所以是可以进行优化以降低时间复杂度。而KMP算法就是一个利用模式串来构造计算不匹配时计算模式串和

2013-08-25 13:58:44 659

原创 hbase 的相关文章

http://www.alidata.org/archives/1509 很详细的关于hbase的介绍hbase性能测试 分析http://www.spnguru.com/2010/11/hbase%E6%80%A7%E8%83%BD%E6%B7%B1%E5%BA%A6%E5%88%86%E6%9E%90/ http://www.spnguru.com/2010/11/hbase%

2013-08-23 22:46:01 853

原创 thrift 的required、optional探究

原因经常使用thrift来编写rpc通信,但是对下面两个问题还是有些疑惑thrift 的required、optional和不写有什么区别optional不设置isset的话被传输后值?实验今天就自己编写代码测试了一下。如下:定义book.thrift 如下: 1: namespace cpp codelab

2013-08-22 14:26:57 9498

转载 Ubuntu Server下配置UTF-8中文环境

转载自:http://www.gaojinbo.com/ubuntu-server%E4%B8%8B%E9%85%8D%E7%BD%AEutf-8%E4%B8%AD%E6%96%87%E7%8E%AF%E5%A2%83.html今日修改按照该链接的操作测试可行。mark下。1、安装中文语言包apt-get install language-pack-zh2、添加locale

2013-08-20 13:30:56 1316

原创 GarsiaWachs算法

该算法可以用来解决石子问题:题目描述如下:有n堆石子排成一列,每堆石子有一个重量w[i], 每次合并可以合并相邻的两堆石子,一次合并的代价为两堆石子的重量和w[i]+w[i+1]。问安排怎样的合并顺序,能够使得总合并代价达到最小。(题目可以参见:http://www.wikioi.com/problem/1048/)算法思想:设一个序列是A[0..n-1],每次寻找

2013-08-18 21:23:03 1438

原创 strcmp函数的使用的一个坑

根据百度百科的:http://baike.baidu.com/view/1026924.htm函数简介原型:extern int strcmp(const char *s1,const char * s2);所在头文件:string.h功能:比较字符串s1和s2。一般形式:strcmp(字符串1,字符串2)说明:当s1当s1==s2时,返回值= 0当s1>s2时

2013-08-17 07:32:54 6210 1

转载 A星寻路算法介绍

转载自:http://www.raywenderlich.com/zh-hans/21503/a%E6%98%9F%E5%AF%BB%E8%B7%AF%E7%AE%97%E6%B3%95%E4%BB%8B%E7%BB%8D学习该算法,并添加自己的理解,注释A*算法是Dijkstra算法和贪婪算法的综合,Dijkstra算法的缺点在于从起点全方位360地向外做广度优先搜索,导致遍历节点太多,

2013-08-15 09:38:42 1293

原创 异或链表

异或链表的结构这是一个数据结构。利用计算机的的位异或操作(⊕),来降低双向链表的存储需求。... A B C D E ... –> next –> next –> next –> 双向链表如上面所示,每个节点有两个指针,分别指向该节点的前驱和后继。而XOR链表如下面所示

2013-08-14 15:43:33 1750

原创 python之pyquery 学习

pyquery是jQuery的Python实现,可以用以解析HTML网页的内容。官网文档:http://pythonhosted.org/pyquery/下载:https://pypi.python.org/pypi/pyquery#downloads测试了一下其功能如下:以http://www.verycd.com/topics/2960375/的网页源码为例:

2013-08-13 13:42:55 1835

转载 C++异常机制的实现方式和开销分析

转载自:http://baiy.cn 以作收藏在我几年前开始写《C++编码规范与指导》一文时,就已经规划着要加入这样一篇讨论 C++ 异常机制的文章了。没想到时隔几年以后才有机会把这个尾巴补完 :-)。还是那句开场白:“在恰当的场合使用恰当的特性” 对每个称职的 C++ 程序员来说都是一个基本标准。想要做到这点,就必须要了解语言中每个特性的实现方式及其时空开销。异常处理由于涉及大量底层

2013-08-12 22:16:35 1081

原创 深度探索C++对象模型读书笔记-第七章站在对象模型的尖端

Template模板是在编译时期而非执行时期被计算的。因此其不会带来效率的降低。 1: const Pointfloat> &ref = 0;该语句会实例化一个Point的float实例。该语句会被扩展为: 1: Pointfloat> temp(float(0)); 2: const Pointfloat> &ref = temp;

2013-08-12 22:11:01 897

转载 python异常如何全面捕获

写在前面:最近写python程序,进场遇到异常的问题,因此需要捕获异常。查阅了下资料,整理如下:常见的异常处理的方法:假设有下面的一段程序:try:    语句1    语句2    .    语句Nexcept .........:    print .......    但是你并不知道“语句1至语句N”在执行会出什么样的异常,但你还要做异常处理,且想把出

2013-08-12 08:50:26 7419

原创 深度探索C++对象模型读书笔记-第六章执行期语意学

在函数中,编译器会帮助将析构函数(Destructor) 安插在相应的位置。对于函数中的局部对象,会将析构函数安插在对象的每一个离开点。例如: 1: void Function(int a) { 2: Object obj; 3: swithch(a) { 4: case 0 :....;return; 5: case

2013-08-11 17:32:23 854

原创 Hadoop–Task 相关

在MapReduce计算框架中,一个应用程序被划分为Map和Reduce两个计算阶段。他们分别由一个或多个Map Task 和Reduce Task组成。 Map Task: 处理输入数据集合中的一片数据,并将产生的若干个数据片段写到本地磁盘。 按照用户提供的InputFormat将对应的InputSpilt解析成一系列的key/value, 并以此交给用户编写的map()

2013-08-08 08:33:14 721

原创 Hadoop–TaskTracker 相关

TaskTracker 是Hadoop集群中运行于各个节点上的服务。他是JobTracker和Task之间的“通信桥梁”。一方面它从JobTracker端接受并执行各种命令:比如运行任务、提交任务、杀死任务。 另一方面它将各个任务的状态周期性心跳汇报给JobTracker。 其两个功能: 汇报心跳: 机器级别信息:节点健康状况、资源使用情况。 任务级别信息:任务

2013-08-08 08:33:12 713

原创 虚机创建

hostname="vm002"ip="192.168.10.201"usage() { echo "" exit 1}if [ $# -ge 2 ]then hostname=$1 ip=$2else usagefiusername="xxx"pwd="xxx"mem_size=16384 # 16Gcpu_count=4 # cpu countdisk_size=307

2013-08-08 08:33:10 876

原创 hadoop–JobTracker 相关

JobTracker 内部使用三层表示: JobInProgress: 跟踪和监控作业运行状态的对象。每个Job分成了多个Task。并为每个Task创建一个TaskInProgress跟踪和监控其运行状态。 而Task在运行过程中由于多种原因,比如软件Bug,硬件故障、推测机制等,每个Task可能尝试运行多次,直到运行成功或者超过尝试次数而失败。 每次的尝试为TaskAttemp。 作业使

2013-08-08 08:33:07 779

原创 爬虫那些事儿--站点压力控制相关

经过前面的介绍,我们大致了解了站点压力控制对于爬虫的重要性。但是站点压力控制对于爬虫来说,是一个比较Open的话题。即到目前为止也没有一个很准确的压力控制方法。 主要的问题由于以下几点: 不同站点对于爬虫的压力允许程度不同。 即由于站点的规模不同、站点的服务器配置不同等。不同的站点能承受的压力是不同的。同时不同的站点对于爬虫的友好程度不同。有些站点允许爬虫爬去其数据,而有些站点不希望爬虫

2013-08-08 08:33:05 1744

原创 将博客搬至CSDN

如题   2013-07-21

2013-08-08 08:33:03 591

原创 c++ stl set

虽然经常使用c++的stl,set也是经常使用的一个容器,但是发现对于set的理解还是比较浅显。今天使用时无意就撞入了一个坑里。 stl中set和map都是用红黑树实现的。set是key和value相同的结构。 代码如下: 1: #include 2: #include 3: #include

2013-08-08 08:33:00 857

原创 tcmalloc jemalloc 和ptmalloc 对比

ptmalloc 是glibc的内存分配管理 tcmalloc 是google的内存分配管理模块 jemalloc 是BSD的提供的内存分配管理 三者的性能对比参考从网上的一个图如下: 自己测试了一下: 代码如下: 1: #include

2013-08-08 08:32:57 1509

原创 爬虫那些事儿--页面变化检测策略

由于爬虫爬取的数据是为搜索引擎服务的。而搜索引擎是为互联网的数据做整合分类以便用户进行检索查看的。因此需要能感知互联网的数据的变化。即对于爬虫已经爬取的数据还需要定期去重新抓取,以检测页面是否变化。    页面的变化我们将其划分为两类:    一: 页面仍存在,但是页面的内容改变了。我们称之为内容更新。由于搜索引擎是基于爬虫爬取的网页的内容建立索引提供用户检索的。如果在爬虫爬去之后

2013-08-08 08:32:55 3488

原创 爬虫那些事儿---爬虫选择策略

爬虫选取策略主要解决抓取什么样的url,什么样的url不需要抓取。筛选主要关注的有两点。一是选择优质的url进行抓取。二是避免重复的抓取以节约抓取。下面介绍下相关的策略。 Pagerank Pagerank(http://baike.baidu.com/view/844648.htm?fromId=1518) 是Google的专有算法,是用来衡量特定网页相对于搜索引擎中的其他网页的重要程度。

2013-08-08 08:32:53 1119

原创 爬虫那些事儿--Http返回码

由于爬虫的抓取也是使用http协议交互。因此需要了解Http的各种返回码所代表的意义,才能判断爬虫的执行结果。返回码如下:100 Continue 初始的请求已经接受,客户应当继续发送请求的其余部分。(HTTP 1.1新)101 Switching Protocols 服务器将遵从客户的请求转换到另外一种协议(HTTP 1.1新)200 OK 一切正常,对GET和POST请求的应答

2013-08-08 08:32:50 6140

原创 爬虫那些事儿-- 简介

从事爬虫相关的工作已经两年多了。简要做下总结。爬虫(Crawler),有些也叫蜘蛛(Spider),用来从互联网下载网页。是搜索引擎的重要组成。爬虫是搜索引擎的数据来源,是数据的入口。爬虫的基本思想是认为整个互联网类似于一个交错的蜘蛛网。在互联网中每个网页都可以通过url访问。任何一个网页都会被互联网中的其他一些网页所指向(即其他页面中包含该页面的url链接)。而几乎每个网页都存在一些指向其他

2013-08-08 08:32:48 911

原创 一致性 hash 算法( consistent hashing )

为什么需要一致性hash 传统hash算法常用方式为:hash(object)%N  N为一个固定值。  N设置较小时容易产生冲突碰撞问题。而N设置较大时则带来开销问题。 对于我们常用的单机程序时是内存开销变大。而用在分布式环境时,该N值和机器数目相关,则是需要的机器数增加。因此,N值应该是一个随着 业务不断变大,而逐步提升的值。而该传统的hash算法带来的问题是N值改变,比如最初N为5,后

2013-08-08 08:32:46 1064

原创 thrift 的一些相关知识

thrift是一个很好用的跨语言的rpc框架。 但是其也有一些需要注意的问题: 第一: 发现其对于类型检查没有那么严格:    最近工作中发现是可以把一个int类型直接付给string,而没有任何warning 第二: 其提供了一个DebugProtocolToDebugSring 可以用来作为debug的结构输出。还挺方便您的

2013-08-08 08:32:44 755

原创 B 树 B+树

拜读了 http://blog.csdn.net/v_july_v/article/details/6530142, 自己总结下: B树的出发点是为了解决磁盘IO慢的问题,尽量再一个磁盘块中提供更多的索引信息。 B+树是在B树的基础上进一步提升。所有的内部节点只有关键字,没有其他信息。降低内部节点的存储开销。是的一个磁盘块可以存储更多的内部节点。 而在叶子节点保存关键字对应的有效内容信息

2013-08-08 08:32:41 719

原创 undefined reference to `libiconv

今天编译代码突然发现报错如下: undefined reference to `libiconv' 查询网上资料好多都是说sphinx编译的问题。 这部分代码之前是可以编译通过没有问题的。而我正好前几天在机器上面尝试sphinx,重新安装了libiconv库。 怀疑跟此有关系。 但是那些都解决不了我的问题了。知道看到下面这个文章,才恍然大悟 http://tonybai.com/201

2013-08-08 08:32:39 1464

原创 Iptables 学习总结

最近配置网络使用了iptables,先简单记录下使用到的部分。 Iptables参数 -m state --state   有数种状态,状态有:  ▪ INVALID:无效的封包,例如数据破损的封包状态  ▪ ESTABLISHED:已经联机成功的联机状态;  ▪ NEW:想要新建立联机的封包状态;  ▪ RELATED:这个最常用!表示这个封包是与我们主机发送出去的封包有关, 可能是响应封包或者

2013-08-08 08:32:37 735

原创 coreseek sphinx 安装配置

wget http://www.coreseek.cn/uploads/csft/3.1/Source/csft-3.1.tar.gzwget http://www.coreseek.cn/uploads/csft/3.1/Source/mmseg-3.1.tar.gz 安装mmseg$./configure --prefix=/usr/local/mmesg$make$mak

2013-08-08 08:32:35 681

原创 WdatePicker 控件使用

今天学习使用WdatePicker控件 首先下载:http://www.my97.net/dp/down.asp 然后解压 使用示例如下: 通过POST获取选中的日期输出以测试 1: "text/javascript" src="My97DatePicker/WdatePicker.js"> 2: 3: "test1

2013-08-08 08:32:33 928

原创 [转载]apache rewrite规则

转载自: http://hi.baidu.com/lzpsky/item/62bce176c443435f0c0a0726 apache服务器使用时配置经常用到,Mark以下以备留用。 RewriteCond指令格式 语法: RewriteCond TestString CondPattern [flags] RewriteCond指令定义一条规则条件。在一条RewriteRule指令前面

2013-08-08 08:32:30 997

原创 python string模块

1: #!/usr/bin/python 2: import string 3: funcs=[] 4: vars=[] 5: for element in dir(string): 6: name = "string.%s" %element

2013-08-08 08:32:28 2403

原创 [转载]ubuntu bash '/bin/sh: Syntax error: "(" unexpected'错误解决

sudo dpkg-reconfigure dash弹出窗口选择No或者否 这样就可以解决问题了,具体细节原因还正在研究中 http://dongyulong.blog.51cto.com/1451604/360088

2013-08-08 08:32:26 1114

原创 shell 的getopts用法

1: #!/bin/bash 2:  3: usage() 4: {

2013-08-08 08:32:24 1093

leveldb-1.15.0修正版

修正了编译错误,增加了一个使用实例,使用scons编译后使用即可。

2014-10-11

windows 网络编程.CHM

windows网络编程的电子书,可惜是英文的,不过看看也挺好的

2009-12-15

MFC类库详解.chm

MFC的类库的详细说明 中文的,可以作为一个方便的用户手册。

2009-12-15

ANSI C 标准中文详解.PDF

ANSI C 的标准,中文的,大家喜欢的可以下下来看看。觉得好的支持一下,谢谢

2009-12-15

PHP使用技巧集【高手的技巧汇总】

内附很多PHP高手写程序总结的各种技巧, 是不断提高自己PHP水平的资料, 需要的自己下吧。

2009-02-01

SAMS Teach Yourself PHP in 10 Minutes【英文chm格式】

很好的自学教材 ,上传上来供大家分享, 觉得好的话顺便帮忙顶下 谢谢

2009-02-01

PHP中文完全手册【方便的用于php函数查询】

最好的PHP手册 内有函数库查询,介绍等

2009-02-01

【C#初学者指南】c#教程

很好的C#入门教程,建议刚开始学c#的人阅读此书

2008-11-08

空空如也

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

TA关注的人

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