自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(43)
  • 资源 (7)
  • 收藏
  • 关注

原创 fedora live use

vesamenu.c32:not a COM32R imageboo:此时输入live也许可以linux0

2015-11-29 09:42:54 149

原创 远程拷贝文件

把机器上指定后缀名的代码,一股脑拷贝的别的机器上,lbin是主机要备份的目录,目录下n多子目录,n多文件。。 rsync -amvHP --include='*.cpp' --include='*.h' --include='*.sh' --include='*.hpp' --include '*/' --exclude='*' lbin 10.0.17.34:/code/...

2015-05-08 09:57:18 142

原创 Nginx 日志滚动

[size=large][b]Nginx 日志滚动配置[/b][/size]在linux下配置日志滚动一般都用系统自带的logrotate,但是在之前的使用中发现,如果一个daemon只打开一个日志文件写日志,在logroate的配置文件中使用copytruncate,会有少部分日志丢失。在对日志要求不是特别严格的情况下这是可行的,但有时候这丢失的几行日志很重要,就需要一个比较严格的日志滚...

2015-04-14 16:55:33 779

原创 【转载】记录zookeeper使用方法

ZooKeeper是一个高可用的分布式数据管理与系统协调框架。基于对Paxos算法的实现,使该框架保证了分布式环境中数据的强一致性,也正是基于这样的特性,使得zookeeper能够应用于很多场景。网上对zk的使用场景也有不少介绍,本文将结合作者身边的项目例子,系统的对zk的使用场景进行归类介绍。 值得注意的是,zk并不是生来就为这些场景设计,都是后来众多开发者根据框架的特性,摸索出来的典型使用方...

2015-04-08 13:52:39 132

原创 Hive去重复数据

Hive数据去重[code="SQL"]insert overwrite table store select t.p_key,t.sort_word from ( select p_key, sort_word , row_number() over(distribute by p_key sort by so...

2015-03-23 15:33:11 1001

原创 Mongodb C++ driver中的逻辑操作“或”

Mongodb中的查询操作比较丰富,支持逻辑操作,如:{ $or: [ { <expression1> }, { <expression2> }, ... , { <expressionN> } ] }在C++ driver中如何实现或查询呢?源码包中的example中没有这样的例子,经过一番查找在bsonobjbuilder.h和jsobjte...

2015-01-28 15:17:07 177

python中的生成器

[size=x-large][b]Python中的生成器[/b][/size][size=medium][b]1. 什么是生成器:[/b][/size]在《Python核心编程》中有个定义:[quote="《Python核心编程》"]挂起返回出中间值并多次继续的协同程序被称为生产器,那就是Python的生成器真正做的事情[/quote]那么什么是协同程序呢?[quote="...

2015-01-11 10:47:52 121

happybase访问Hbase

Java以为的语言访问Hbase都是通过thrift进行访问的,因此需要在Hbase上开启thrift服务如果用[code="shell"]hbase-deamon.sh start[/code]启动服务,默认用的是thrift2,在用happybase的时候会出现版本不兼容的问题,因此用thrift来启动[code="shell"]hbase thrift -p 9090 sta...

2015-01-08 14:40:12 623

ElasticSearch中文分词ik安装

[url]http://www.elasticsearch.org/overview/elkdownloads/[/url]下载编译好的安装包,解压缩就可以直接使用如果是自己编译的版本在安装插件时可能会出现一些问题,比如安装elasticsearch-head,虽然安装成功,但是插件运行不正常,能够查看索引,但是节点的相关状态信息无法显示,所以在熟悉elasticsearch的细节后再自编...

2015-01-02 22:59:55 340

原创 ssh 无密码登陆

用$ssh-keygen -t rsa生成密钥与公钥将.ssh/目录下的id_rsa.pub导入到主机的authorized_keys上如果需要用密码登陆的话,在主机上执行$chmod o-w ~/$chmod 700 ~/.ssh$chmod 600 ~/.ssh/authorized_keys...

2014-12-26 14:03:00 74

原创 vim 非贪婪匹配

vim的模式匹配使用正则表达式.*是贪婪匹配,会匹配最多的字符如果要是非贪婪的匹配则要使用\{-}一个例子如下:msgid:[aaaaa-ffff-#abcdef-[color=red]123456_id[/color]] #########################zzz-eee############如果用[b]msg.*-[/b]匹配会匹配到[b]msg...

2014-11-13 15:14:27 648

原创 [转]vim-airline in xshell or putty or MobaXterm

windows下使用Xshell,putty或者是MobaXterm时,vim-airline插件的bottom bar可能显示不好,主要是字体的问题,正确的安装字体后能解决问题。[url='https://codeload.github.com/powerline/fonts/zip/2015-12-04']powerline字体下载[/url]安装完字体后,设置终端的字体为Deja...

2014-11-11 13:36:53 280

原创 跟踪同一个系统中不同进程的系统调用

跟踪同一个系统中不同进程的系统调用在编写多线程的程序时,偶尔会遇到某一个线程不工作的现象,想看看到底卡在什么地方。1)查看日志,在每行日志中都添加线程号,该方法存在一个问题,当日志滚动很多天时,找到某个线程的最后一行日志比较费劲,并且如果没有很详细的debug日志的话,代码检查范围也比较广。2)使用strace命令,strace命令是查看某个进程的系统调用,我们知道linux下线程...

2014-09-24 14:16:54 259

easy_install 报错

easy_install -U distribute 后执行easy_install pkg时报错ImportError: Entry point ('console_scripts', 'easy_install') not found解决办法:重新安装distribute_setupcurl -O http://python-distribute.org/distr...

2013-11-26 10:32:48 134

原创 LVS+keepalived配置备忘

LVS + keepalived实现负载均衡的文档很多,这里不再重复说明,只记录在配置过程中容易忘记的地方。1. 确保IP转发功能开启[code="shell"]# sysctl -a | grep ip_forwardnet.ipv4.ip_forward = 1[/code]方法有三种 1)sysctl net.ipv4.ip_forward=1 2) echo...

2013-07-18 14:47:43 100

原创 Structs in ruby

Ruby中的Struct是一个特殊的类,只([color=red]仅仅只[/color])用来存取数据先看一个例子struct的例子[code="ruby"]Person = Struct.new(:name, :gender, :age)jia = Person.new("zhang san", "male", 20)p jiaputs jia.name + jia.ge...

2012-12-11 14:33:52 72

ruby mix-in

Ruby mix-inRuby 是一门面向对象的语言,所有一切都是对象包括基本数据类型变量(如:int,double,string,hash)等,函数,类型本身也是对象。Ruby在语言设计时没有采用C++等语言的多重继承,而是采用Java单继承的方式。也就是说每个类只能有一个父类,但是根据DRY的知道原则,多重继承在面向对象中是非常必要的。Java采用接口方式实现多重继承,Ruby则用mix-...

2012-12-10 16:49:18 97

原创 gnome-shell安装

[b]1. 安装gnome3 tweak tool工具,用于gnome的高级设置[/b]yum install gnome-tweak-tool[b]2. 修改标题栏宽度[/b] 1) sed -i "/title_vertical_pad/s/value=\"[0-9]\{1,2\}\"/value=\"0\"/g" /usr/share/themes/Adwaita/metaci...

2012-09-04 12:54:53 605

原创 源码编译安装mysql

由于开发环境中的mysql有别的用处,为了不影响开发换进需要源码安装mysql,选择版本为5.5.27,需要安装包如下:cmake-2.8.9.tar.gzmysql-5.5.27.tar.gz1. 安装cmake[code="shell"]> tar zxvf cmake-2.8.9.tar.gz> cd cmake-2.8.9> ./configure> mak...

2012-08-30 14:52:19 74

原创 Linux网络参数优化

net.ipv4.tcp_tw_reuse = 1[b]表示开启重用。允许将TIME-WAIT sockets重新用于新的TCP连接,默认为0,表示关闭;默认情况下是0, 如果并发连接很多很多,会出现系统没有可分配的端口的情况。[/b]net.ipv4.tcp_tw_recycle = 1[b]表示开启TCP连接中TIME-WAIT sockets的快速回收,默认为0,表示关闭...

2012-08-21 18:47:47 164

原创 typedef定字符串数组类型

[code="c"]typedef char char_array[1024];char_array a1 = "1234567890abcdefghijklmnopqrstuvwxyz";printf("a1(%s)\n", a1);[/code]执行结果:[color=blue]a1(1234567890abcdefghijklmnopqrstuvwxyz)[/color]...

2012-07-24 14:06:12 488

tmux使用(程序员适用)

[b][size=medium]tmux基本使用[/size][/b] tmux是一个优秀的终端复用软件,即使[color=blue]非正常掉线,也能保证当前的任务运行[/color],这一点对于远程SSH访问特别有用,网络不好的情况下仍然能保证工作现场不丢失! tmux完全使用键盘控制窗口,实现窗口的切换,像是Chrome的方式管理shell,使用起来很方便,byubo也有同...

2012-07-12 16:53:09 351

原创 在Linux下查看系统名称

有时候需要查看系统名称,由于使用不多,以至于经常遗忘,反复Google搜索查询命令,此次还是决定记录下来,好记性不如烂笔头。方法:[code="shell"]> cat /etc/issueFedora release 17 (Beefy Miracle)Kernel \r on an \m (\l)[/code]其它相关命令:1.用户查询系统内核版本,主机名,域名等...

2012-07-04 15:57:27 3131 1

redis 事务

redis的事务功能可由multi和watch命令来完成;watch keys 还可以检测多个key[code="redis-cli"]redis > WATCH mmOKredis > MULTIOKredis > zadd mm 5 eeeeeeeeeeeeeeQUEUEDredis > zadd tt 5 55555555555555QUEUED# 此...

2012-07-02 15:30:08 44

原创 [译]Google声称将信息服务迁移至他们到APPS上能节省能源

[b]Google says moving IT to its Apps can save major energy[/b]我们已经知道,在许多情况下,云计算可以更节能,但是它能节省多少能量(并且是在什么情况下)。Google发表过一篇[url=http://googleblog.blogspot.com/2012/06/energy-efficiency-in-cloud.html]博文[/...

2012-06-24 21:35:29 54

原创 负数二进制表示

负数在计算机中用补码表示。这是教科书上到表示,由于时间久远,又由于上课没好好学,以至于补码是啥,在心中没留下任何到痕迹,补习一下。原码:整数在内存中用原码表示,即按绝对值大小转换成二进制如: [b]00000101[/b]是[b]5[/b]到二进制表示反码:将二进制数按位取反,所得的新二进制数称为原二进制数的反码如:[b]00000101[/b]按位取反,得[b]111...

2012-06-15 17:37:16 236

原创 redis安装与配置

redis有丰富的数据结构,而不仅仅是一个key-value数据缓存数据库。Redis支持string, list,hash,set, sorted set,当然只支持对key的查询,要对value的查询需要自己来实现,不过可以通过一些方法实现仿多关键字查询。 redis安装很简单,都是一个套路。 redis配置选项较多,在源代码中给出了一个模板redis.co...

2012-05-31 10:42:57 52

原创 solr + Tomcat安装

[b]1.[/b] 先安装Tomcat,由于这次是在windows7下安装体验的,所以步骤比较简单下载Tomcat installer安装即可!测试安装是否成功:[url]http://localhost:8080/[/url]能看见Tomcat的欢迎界面,说明Tomcat安装成功,Windows下这个没有问题。2. 安装solr 1)下载apache-solr-...

2012-04-26 13:44:27 169

原创 原型模式(prototype)

意图: 用原型实例指定创建对象的种类,并通过拷贝这些原型创建新的对象。结构图[img]http://dl.iteye.com/upload/attachment/0066/4112/0ec018ac-09b2-3cf0-a91d-b47e6be9b45f.png[/img]实现示例:原型Prototype:[code="java"]public abstract class P...

2012-04-11 18:40:50 74

原创 go语言中的channel

channel是go语言中的同步工具,有两种模式[list][*] 缓冲程序执行序列将阻塞在读channel的调用处

2012-04-01 13:39:03 121

原创 google go-tour安装

由于[code="shell"]go get code.google.com/p/go-tour/gotour[/code]报错:[code="shell"]# cd .; hg clone -U https://code.google.com/p/go-tour /usr/home/huaying/go/src/pkg/code.google.com/p/go-tourabort...

2012-03-31 15:03:53 288

原创 抽象工厂模式(abstract factory)

意图:提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类结构:[img]http://dl.iteye.com/upload/attachment/0064/8519/1bac3b70-2a35-3458-93da-80b9e97f083e.png[/img]AbstractFactory声明一个创建抽象产品的操作接口ConcreteFactory实现创建具体产品对...

2012-03-27 22:49:56 58

原创 观察者模式(Observer)

[b]意图:[/b]定义了一种一对多的依赖关系,让多个观察者对象同时监听某一个主题对象,这个主题对象在状态发生改变时,会通知所有观察者对象,是他们能够自动更新自己。[b]别名:[/b]Publish/Subscribe模式[b]结构图:[/b][img]http://dl.iteye.com/upload/attachment/0065/4792/986c437b-7937-3bd7-...

2012-03-26 15:51:29 79

原创 本地svn简单配置

本文只记录配置本地subversion,没有认证,http,ssh等配置1. 安装subversion服务端 yum install subversion 或源码编译安装2. 创建svn用户组root用户[code="shell"]# groupadd developers //增加组developers# u...

2012-03-22 13:12:16 113

原创 scanf, fscanf, sscanf正则表式

int scanf(const char *format, ...); int fscanf(FILE *stream, const char *format, ...); int sscanf(const char *str, const char *format, ...);其中的format可以是一个或多个 {%[*] [width] [{h...

2012-03-19 12:51:54 124

原创 Linux 查看系统信息命令

系统:[code="shell"]# uname -a # 查看内核/操作系统/CPU信息# head -n 1 /etc/issue # 查看操作系统版本# cat /proc/cpuinfo # 查看CPU信息# hostname # 查看计算机名# lspci -tv # 列出...

2012-03-15 10:33:33 67

原创 工厂方法(Factory Method)

意图:定义一个用于创建对象的接口,让子类决定实例化哪一个类,Factory Method使一个类的实例化延迟到其子类。别名:虚构造器(Virtual Constructor)结构:[img]http://dl.iteye.com/upload/attachment/0064/8000/d1face1d-437a-31e3-bdbc-4206c662b966.png[/img]Pro...

2012-03-14 11:42:59 92

原创 代理模式(Proxy)

意图:为其它对象提供一种代理以控制对这个对象的访问。结构图如下:[img]http://dl.iteye.com/upload/attachment/0064/3898/f16c00fb-4abd-37d6-86ea-a3fb9703257b.png[/img]示例代码:[code="java"]public abstract class Subject { public ...

2012-03-07 13:14:10 77

原创 装饰模式(Decorator)

意图:动态的给一个对象添加一些额外的职责,就增加的功能来说,Decorator模式相比生成子类更为灵活。别名:Wrapper结构图如下:[img]http://dl.iteye.com/upload/attachment/0063/9712/f6f110e7-ab47-3f17-85c4-648d1fc5792c.png[/img]Decorator维持一个指向Component对...

2012-02-29 22:55:56 73

原创 面向对象一般原则

抽象类:一种聚集相关实体的方式,其关注点是“如何设计具体的派生类/实现,从而可以以相同的方式使用他们”接口:关注点是“要使用派生类/实现的对象”[img]http://dl.iteye.com/upload/attachment/0063/6778/233a9834-acd8-3e79-8c97-847e5d70575e.png[/img]...

2012-02-23 23:19:51 51

Elasticsearch.Server.2nd.Edition.kindle

Elasticsearch.Server.2nd.Edition.kindle

2015-01-28

Elasticsearch Server 2nd Edition

Elasticsearch Server 2nd Edition, 英文版

2015-01-28

RDBMS to Mongodb Migration

RDBMS to MongoDB Migration,mongodb 白皮书

2015-01-02

gnu make-v3.80.pdf.

本文比较完整的讲述GNU make工具,涵盖GNU make的用法、语法。同时重点讨论如何为一个工程编写Makefile。作为一个Linux程序员,make工具的使用以及编写Makefile是必需的。系统、详细讲述make的中文资料比较少,出于对广大中文Linuxer的支持,本人在工作之余,花了18个多月时间完成对“info make”的翻译整理,完成这个中文版的书册

2010-12-20

GNU make 项目管理(pdf)

英文版图书,详细介绍makefile的写法

2010-12-20

空空如也

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

TA关注的人

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