- 博客(56)
- 资源 (2)
- 收藏
- 关注
原创 用position:relative和float实现不定宽块级元素的居中
分析使用position:relative和float实现不定宽块级元素的居中
2015-09-20 12:31:43
3013
翻译 [翻译]Go语言调度器
##译序 本文翻译 Daniel Morsing 的博文 The Go scheduler,个人觉得这篇文章把Go Routine和调度器的知识讲的浅显易懂,作为一篇介绍性的文章,很不错。
2015-07-08 16:35:54
1903
转载 关于VirtualBox下虚拟机的几种网络模式
今天在折腾Hadoop完全分布式,重点是在一个宿主机上搭建多个虚拟机,需要多个虚拟机之间可以互ping,而且最好可以访问外网。
2015-06-01 21:42:50
1186
转载 Hbase常用命令行总结
今天偶然要使用HBase的命令行,除了以前用得比较多的create,scan等,其他的就都不知道了。于是搜到一篇国外的总结,转载到这里,方便以后查用https://learnhbase.wordpress.com/2013/03/02/hbase-shell-commands/
2015-05-23 10:43:35
600
原创 spark-OutOfMemory:GC overhead limit exceeded 解决
今天准备跑自己的spark程序,但是运行过程中遇到了OutOfMemory:GC overhead limit exceeded的错误。最后通过设置spark executor cores解决
2015-04-27 03:37:50
13484
1
原创 让HBase和Zookeeper分离开来单独执行
前言HBase自带的有一个Zookeeper,在standalone模式下很好用,但是有时候我们想把zookeeper独立出来,其他的应用也可以使用独立的zookeeper集群比如Kafka,方便管理配置。
2015-04-23 09:57:03
2271
原创 scala implicit class
scala 是一门 scalable 的语言,扩展性很强。 implicit 是 scala 的一个关键词,当它被用于 class 时,该类将被认为是implicit class,它可以用来扩展现有类的行为和方法以下在scala REPL中展示implicit class的作用scala> "HAL".increment:8: error: value increment i
2015-03-18 15:08:08
1336
原创 Linkedin Camus的使用
Preface在实现Lambda架构的时候,我以Kafka作为系统的输入,同时需要将数据批量从Kafka导入到HDFS存储起来,以备Batch layer批处理计算。而从Kafka到HDFS的数据传输,Linkedin已经有一个开源的项目,即Linkedin Camus。Camus是Kafka到HDFS的管道,它实际上是向Hadoop提交一个作业,并从Kafka获取指定topic的消息,存
2015-03-14 13:43:16
5765
原创 Linkedin Camus,从Kafka到HDFS的数据传输管道
Preface本文是对Linkedin-Camus的介绍。内容都是从Camus的github中摘取出来的,详细的内容要看其说明和源码Introduction of CamusCamus是Linkedin开源的一个从Kafka到HDFS的数据管道,实际上它是一个MapReduce作业What is AvroApache Avro是一个 Data Seria
2015-03-14 13:41:35
12771
3
原创 <Python一下>Time操作
UTC & Localtime 是python的一个模块,其中又有一个同名函数time,返回当前到所谓epoch,即1970.1.1的秒数,不过与Unix不太一样的是,这厮返回的是一个精确度更高的浮点数说time操作之前,必须说UTCUTC:Universal Time Coordinated,传说中的世界调整时间,全世界的时间都统一到UTC来。前身就是GMT(Greenwich
2015-03-10 10:37:53
674
原创 解决vim和gvim颜色方案不一致的问题
前段时间一直被vim和gvim颜色显示不一致的问题困扰,颜色方案不一致就忍了,就连代码语法颜色配色(filetype syntax highlighting)vim都差了gvim一截这就不能忍了啊。耐着性子用了两天gvim,其实也挺好的,但是这个vim的问题不解决心里总是不爽。于是谷歌起来,终于发现问题所在:终端颜色位数问题插件CSApproxstackoverflow大神
2015-03-09 11:11:42
3283
2
原创 Vim配置目录结构
一直以来都没有好好得学习一下Vim,甚至连基本的Vim文件夹都搞不清楚。工作中总会有不想兴师动众使用IDE的时候,但是配置不好的Vim用起来又特憋屈。 之前使用了spf13的一个vim配置,但是我觉得那个太复杂了,倒不如自取所需,自己来配置一些。首先还是先学习一下Vim的文件夹吧。 其实很多东西都可以通过vim的:help查到。系统文件夹我的是在/usr/share/v
2015-03-08 11:16:00
2212
原创 Vim中的buffer, window, tab
Preface一直都搞不清楚Vim的buffer,window以及tab的含义,今天搜了一下,发现一篇文章讲了这个,于是沿着别人的思路自己边看边探索。Buffer在Vim中,可以把buffer看成一个打开的文件实例。比如我用vim打开了一个文件,这时候就相当于创建了一个buffer,该buffer属于刚才这个文件。 但是,虽然打开了文件就创建了buffer,buffer
2015-03-08 11:15:54
2180
原创 正则表达式之预查
在正则表达式中,有一部分内容并不容易通过文档解释就能搞清楚,那就是预查。预查包括正向预查,反向预查,细分了还各自有肯定预查和否定预查。(?=pattern) 正向肯定预查,在任何匹配pattern的字符串开始处匹配查找字符串。这是一个非获取匹配,也就是说,该匹配不需要获取供以后使用。例如,“Windows(?=95|98|NT|2000)”能匹配“Windows2000”中的“Wi
2015-03-08 11:14:04
5503
原创 Druid初体验
Preface毕业设计研究 Lambda 框架的实现,其中的Serving layer现在想用Druid来实现,看官网中Serving layer 的 component 中,Druid还是挺适合的,加上已经有案例利用其来实现Lamda框架了,所以不妨一试。Main官网/文档最好的学习一个新东西的方法就是参照它的官网文档 ( 如果有的话 ),从安装到使用甚至到白皮书,内容应该是应有尽有。 我的所有
2015-03-05 09:34:45
782
2
转载 postgresql 的一些常用命令
(1)用户实用程序:createdb 创建一个新的PostgreSQL的数据库(和SQL语句:CREATE DATABASE 相同) createuser 创建一个新的PostgreSQL的用户(和SQL语句:CREATE USER 相同) dropdb 删除数据库 dropuser 删除用户 pg_dump 将PostgreSQL数据库导出到一个脚本文件 pg_dum
2014-11-05 17:09:03
612
转载 php添加模块
php如何使用第三方软件本例是: php(mysql_connect()函数)使用mysql(第三方软件). 观察上图,php能使用大量的第三方非php库(典型性是C语言写库), 为了达到此目的,你必须具备两个条件:Shell代码条件I. 安装第三方库(软件)条件II. 安装了该软件的php扩展如果只是安装mysql,满足条件I,但是条件II不满足, 为了满足条件二
2014-09-24 11:25:19
846
原创 Linux信号与统一事件源
信号是一种异步事件,信号处理函数和程序的主循环是两条不同的执行路线。信号处理函数需要尽可能快地执行完毕,以确保信号不被屏蔽太久(为了避免一些竞态条件,信号在处理期间,系统不会再次触发它)。一种典型的解决方案是:把信号的主要处理逻辑放到主循环中,而不是在信号处理函数中进行主要的逻辑处理。信号处理函数被触发时,只是简单地通知主循环程序接收到信号,并把信号值传递给主循环,主循环程序根据接收到的信
2014-09-22 23:33:29
989
1
原创 Linux mysql C 编程——connector/c
LinuxMysql C 使用C语言编写mysql客户端程序,即使用mysql提供的api,对mysql进行访问。基础的API对封装自己的DB访问框架来说就是一砖一瓦。开始使用API前在编程语言和mysql数据之间实现通信的组件就是Connector。Mysql针对许多语言都提供了connector。可以说connector是一个库,是上面提到的API的载体。要
2014-09-20 21:08:17
1576
原创 什么是线程安全?
Wiki about Thead Safe: http://en.wikipedia.org/wiki/Thread_safety引用Wikipedia:Thread safety is a computer programming concept applicable in the context of multi-threaded programs. A piece
2014-09-20 17:51:18
691
转载 linux下mysql的root密码忘记解决方法
1.首先确认服务器出于安全的状态,也就是没有人能够任意地连接MySQL数据库。 因为在重新设置MySQL的root密码的期间,MySQL数据库完全出于没有密码保护的 状态下,其他的用户也可以任意地登录和修改MySQL的信息。可以采用将MySQL对 外的端口封闭,并且停止Apache以及所有的用户进程的方法实现服务器的准安全 状态。最安全的状态是到服务器的Console上面操作,并且
2014-09-16 23:15:16
476
转载 史上最强的vim配置文件.vimrc
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" Maintainer: amix the lucky stiff" http://amix.dk - amix@amix.dk"" Version: 3.6 - 25/08/10 14:40:30"" Blog_post:
2014-08-09 11:58:16
1265
转载 浅谈C/C++堆栈指引——C/C++堆栈很强大(看到的很详细的文章,值得一看)
本文转载自http://blog.csdn.net/mynote/article/details/5835615本文为Binhua Liu原创作品。本文允许复制,修改,传递,但不允许用于商业用途。转载请注明出处C/C++堆栈指引Binhua Liu前言 我们经常会讨论这样的问题:什么时候数据存储在飞鸽传书堆栈(Stack)中,什么时候数据存
2014-07-22 23:27:37
1593
原创 Improving Python——模块和包管理
Modules and PackageModules:同样是python文件,一个单一的python文件就是一个module(模块)import:可用于导入 module 或者一个 class 或 functionimport module_name:直接导入一个module,模块中的所有class 和 function 都可以通过 module_name.class_name
2014-04-18 10:26:42
797
原创 epoll 的 Edge Trigger 和 Level Trigger 理解
Stackoverflow 上有个问题讨论了这个话题:http://stackoverflow.com/questions/9162712/what-is-the-purpose-of-epolls-edge-triggered-optionLevel Trigger 就是在描述符就绪的时候,内核会持续地通知进程,直到进程处理描述符,但是有时候我们并没办法第一时间就去处理这个描
2014-04-05 10:46:19
2301
转载 Session与进程组
转载自http://learn.akae.cn/media/ch34s02.htmlSession与进程组 在第 1 节 “信号的基本概念”中我说过“Shell可以同时运行一个前台进程和任意多个后台进程”其实是不全面的,现在我们来研究更复杂的情况。事实上,Shell分前后台来控制的不是进程而是作业(Job)或者进程组(Process Group)。一个前台作业可以由多个进程
2014-03-31 16:51:08
562
转载 为apt-get添加http代理
可以通过三种方法为apt-get设置http代理方法一 这是一种临时的手段,如果您仅仅是暂时需要通过http代理使用apt-get,您可以使用这种方式。 在使用apt-get之前,在终端中输入以下命令(根据您的实际情况替换yourproxyaddress和proxyport)。export http_proxy=http://yourproxyaddress:proxyport
2014-03-17 13:55:07
885
原创 KMP算法中next函数的实现
鉴于有很多人都在自己的博文中介绍了KMP的思想和主体函数,我就不赘述之了。这里我只为自己学习KMP算法过程中遇到的难题做一下笔记,是关于算法中next数组的求解的,方便自己以后翻阅,也方便有相同需求的人浏览建议大家在浏览的时候,自己可以在纸上画着图,更容易理解第一个难点在于:理解next数组假设我们的模式串为 P我们知道,KMP算法中,next的定义是:next [
2014-03-05 09:50:00
1030
原创 摘抄自《程序员面试宝典》,C/C++中 sizeof 的用法
首先要明确sizeof不是函数,也不是一元运算符,它是一个类似于宏定义的特殊关键字sizeof 的括号内的内容在编译阶段是不被编译的,所以如果有以下代码:int a = 4;printf("%d\n",sizeof(a++));a的值还是4但是,如果是执行:int a = 4;printf("%d\n",sizeof((char)a));则
2014-03-04 21:52:03
986
原创 GCC下,C语言参数的内存分配 以及 函数可变参数
今天想看看C语言是怎么实现函数可变参数列表的,无意间一个小实验发现了C语言在gcc下编译时内存分配的策略(VC不知道怎么样),下面记录一下现在有一段这样的小程序#include #include void myfunc(int a,char b,short c){ printf("%x\n%x\n%x",&a,&b,&c); //分三行输出a,b,c的地址}i
2014-03-03 16:24:28
1325
原创 数据结构Heap的操作和使用
堆,可分为大顶堆和小顶堆,以大顶堆为例,其特点为父节点要比起子节点都大。所以堆支持在最快的速度获得最大值(对于大顶堆)/ 最小值(对于小顶堆)同时,堆的插入、删除的效率都很不错 O(logn)堆的形状是一个完全二叉树,我们用数组来存储表示堆所以关于对就有以下的特性:对于编号为p的节点,其父节点、左子节点、右子节点的编号分别为:(p-1) / 2,2p+1,2p+2对于节
2014-02-28 23:27:14
1143
原创 BST删除操作
struct stu{ int val; stu* lc; //左孩子 stu* rc; //右孩子};stud* deleteMin(stud* subroot,stud*& min){ if(subroot->lc == NULL) { min = subroot; //左孩子为空,则根节点就是最小节点
2014-02-28 16:46:42
1620
1
原创 虚函数 virtual
先说不声明为虚函数的成员函数吧现在假设有一个类A,声明了一个非虚函数some_func,输出“A”然后有一个类B继承类A,并实现(覆盖)了some_func,输出“B”现在有个运行例子:定义一个类B的实例 B b,和一个类A的指针 A * a,并且a指向b,如果调用 a->some_func(),结果是什么?由于a是指向父类A的指针,所以当a指向实例b时,其实只能访问到
2014-02-27 23:47:33
640
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人