程序执行与配置信息的路径无关性

一个这个的问题,在bin目录下能成功启动程序,在根目录下却不行,程序执行与配置信息的路径无关性非常重要,无论是程序或者配置中都应该设置为绝对路径,以免埋坑踩坑。

继续阅读 »

西点军校22条军规(中英对照)

西点军校22条军规,记录以自勉。

继续阅读 »

Google BigTable阅读笔记(四)

Google BigTable在实现上有何优化?整个项目又有啥经验教训呢?

继续阅读 »

Google BigTable阅读笔记(三)

Google BigTable实现细节是怎么样的呢?子(Tablet)表的位置信息是如何存储的?如何分配的?如何压缩存储的?

继续阅读 »

一种简单检测与破除死循环的方法

程序进行逻辑处理的过程中,不能信任上游传入的数据,在对这些数据进行逻辑处理时,可能导致死循环,从而CPU99%,占满计算资源。本文介绍一种简单、粗暴、可依赖的能够检测与破除死循环的方法,在工程中应用屡试不爽。

继续阅读 »

Google BigTable阅读笔记(二)

Google BigTable提供了怎样的客户端API?它的基础构件又是哪些?

继续阅读 »

Google BigTable阅读笔记(一)

Google BigTable是一个分布式的结构化数据存储系统,用来存储海量的数据,这些数据分布在以千计数的普通PC集群上。Google有很多项目都使用BigTable存储数据,如Web索引、Google地图、Google金融等。这些应用对存储量、响应速度、吞吐量需求各异,但BigTable还是成功成为一个灵活且高性能的解决方案。

继续阅读 »

Google MapReduce阅读笔记(三)

Google MapReduce如何支持多种分区函数与合并函数,如何保证顺序,支持何种输入输出类型,如何处理损坏数据,能否支持进度查看,这些问题都需要得到解决。

继续阅读 »

Google MapReduce阅读笔记(二)

MapReduce模型有多种实现方式,一种是小型共享内存式,一种是基于NUMA架构的大型多处理器。Google是如何实现MapReduce的呢?整个执行流又是怎么样的呢?

继续阅读 »

Google MapReduce阅读笔记(一)

MapReduce不是一个产品,它是一种基于分治思想,一种解决问题的思路。Google MapReduce是Google产出的一个编程模型,算法模型,当然Google也有其相关实现,提供给了用户相关函数接口:
(1)Map函数接口处理一个基于key/value(后简称kv)的成对(pair)数据集合,同时也输出基于kv的数据集合;
(2)Reduce函数接口用来合并Map输出的kv数据集合;
现实中有许多应用需求都能用这种模型处理,许多应用都能用这种方法解决。

继续阅读 »

boost之lexical_cast简易说明

boost中的lexical_cast使用统一的接口实现字符串与目标类型之间的转换。

继续阅读 »

linux网络编程中常见异常处理

linux网络编程中,常常遇见一些异常,我们如何复现与处理这些异常呢?

继续阅读 »

linux网络编程常用函数说明

linux网络编程,会时常用到connect、listen、accept、close等常用函数,它们有一些什么细节需要注意呢?

继续阅读 »

TCP对即时通讯协议设计的启示

TCP建立的是可靠的链接,它对即时通讯协议的设计有什么启示呢?

继续阅读 »

UDP对即时通讯协议设计的启示

UDP建立的是不可靠的链接,需要解决报文的可达性、序列、重复等问题,它对即时通讯协议的设计有什么启示呢?

继续阅读 »

第 9 页,共 10 页« 最新...678910