您现在的位置:首页
--> 系统架构
最近, 在编写一个专门压测NameNode的工具(以下简称s4nn), 它有两个难点 : s4nn需要可以模拟上万个DataNode ; s4nn 需要灵活的支持对NameNode访问行为的定义. 后者导致了本文的思考. 命令行参数和配置文件是最常用来配置系统的方法, 前者用于配置项较少, 后者则适合配置复杂情况. 这两种方式都有共同令人痛苦的地方: 编写代码去载入->解析->转换, 通常如同处理协议般无聊(要是有个什么变更, KMN!!); 对于复杂的配置文件编写...
20 项须知:前言 如今许多人都离不开网络,我们只要动动手指就能获得全球信息,并且在瞬间接触到世界各地的人和活动。所有这些超强体验都归功于开放的互联网。世界上的任何人都能通过任何已联网的设备,通过浏览器上网。 但是浏览器和网络的工作原理究竟是怎样的呢?万维网是如何发展到如今我们所了解和喜爱的样子的?我们需要了解哪些事情才能安全有效地浏览网络?“我了解到的关于浏览器和网络的 20 件事”是一个简短的指南,面...
昨天我们看到一个非常简单有效的使用中间件组件的例子。这次我们加入一个基本的 HTTP 的功能 JSONP. JSONP (JSON-Padding) 是一个非官方的协议,它允许在服务器端使用 JSON 给来给客户端的 javascript ...
目前有大量的 Plack 中间件组件,分布在在 Plack 核心发布中包含有,还是 CPAN 上有一些。我写这个 advent calendar 让很多人了解和喜欢这些。 从今天起,我们就为大家介绍其中一些很好的中间件组...
Files LevelDB的实现本质上类似于Bigtable中的tablet(参见Bigtable论文5.3节)。但是,与论文中的具体的文件组织方式稍有不同,解释如下: 每个数据库由一组存储在指定目录下的一个文件集合组成。有如下几种文件类型: Log fil...
知乎上有个问题,”为什么京东今天还在用.net架构?阻力在哪里?” 回答中有以下几种意见: 我想问的是 .net 与java 与php比较性能方面有劣势吗?这问题问的,真是无语,记住了,技术永远是实现业务工具,对于一个企业,一个网站,一个应用的后端,语言根本不是问题,问题是在用这个工具的人!就像打羽毛球,同样都用顶级的球拍,一个普通人和国家队的能比么?我把我的意见贴在这里: 1. 关于性能. 我诧异,还有人一谈到这...
源文章来自前C++标准委员会的 Danny Kalev 的 The Biggest Changes in C++11 (and Why You Should Care),赖勇浩做了一个中文翻译在这里。所以,我就不翻译了,我在这里仅对文中提到的这些变化“追问为什么要引入这些变化”的一个探讨,只有知道为了什么,用在什么地方,我们才能真正学到这个知识。而以此你可以更深入地了解这些变化。所以,本文不是翻译。 Lambda 表达式 Lambda表达式来源于函数式编程,说白就了就是在使用的地方...
译者序:一直以来我都想写一篇关于游戏与交互设计之间关系的文章,因为我坚信好的设计和游戏一样有魔力,都能为用户带来乐趣。这可能跟我之前在游戏公司任职过有关,潜移默化地受到感染和...
好的编程原则跟好的系统设计原则和技术实施原则有着密切的联系。下面的这些编程原则在过去的这些年里让我成为了一名优秀的程序员,我相信,这些原则对任何一个开发人员来说,都能让他的编程能力大幅度的提高,能让他开发出可维护性更强、缺陷更少的程序。 我不要自我重复 ― 这也许是在编程开发这最最基本的一个信条,就是要告诉你不要出现重复的代码。我们很多的...
根据最近生产环境使用的经验,更多的项目的采用,以及采用了更加自动的测试平台,对HBase做了更多的场景的测试,在这篇blog中来分享下纯粹的随机写和随机读的性能数据,同时也分享下我们调整过后的参数。 ps: 强烈推荐同事的blog,其中记录了很多我们对HBase的改进,以及我们在运维HBase项目时碰到的各种奇怪、诡异的问题。
这些话来自于我们的软件领袖Jim Coplien―上世纪九十年代最流行的几本C++著作的作者。原话是这样的: 严格的按照YAGNI原则的驱动测试开发(TDD)会导致敏捷开发3次迭代结构的坍塌。 看到反TDD运动已经形成了一定的气候,真是让人感到非常的振奋,我特别喜欢Jim和Bob Martin 之间的争论,Bob Martin,这出了名的TDD极端主义者,认为任何...
自从我发布了“Scrum为什么不行”,并被CSDN推成首页头条后,我在我的新浪微博上就经常被敏粉们@去讨论他们的一些话题。他们似乎想要从我这里听到一些不同的声音,我很喜欢他们的这种态度,在这里先赞他们一个。既然,让我来评论他们的东西,我就不客气了,板砖自然是少不了的。 我觉得我在微博上的观点比较散,所以在这里做一个汇总。我在所有批评敏捷的文章里都重复说过我的立场,这里还要再说一遍,因为那群人很敏感――“我承...
很早的时候就有人发明了 OpenID,希望解决用户在每一个网站都重复注册流程的问题,但是由于种种原因,这个事情好久没什么起色。我曾经也弄过 OpenID,后来发现由于不怎么常用,我连 URL、密码之类的都记不住,还不如在每个网站上都注册一下。从网站的角度看,他们也不愿意把网站的入口交给第三方――这个 OpenID provider 的网站挂了怎么办?直到 Google/Yahoo! 这样级别的作为 OpenID provider 还比较靠谱。第一,它们足够稳定;...
从ITeye(JavaEye)被CSDN收购,我从上海搬家到北京上班,眨眼之间已经过去了一年多。回顾过去这一年,生活环境发生了巨大改变,工作的职责和角色也重新定位,面临了一些新的困难和挑战。总体来说,感觉自己这一年过得很充实,在公司的大力支持下,计划做并且花了时间和精力努力的事情基本都做成了,如果要给自己打分的话,我会打80分。那剩下的20分代表本计划去做却没有时间或者精力做的事情。希望在...
淘宝网拥有国内最具商业价值的海量数据。截至当前,每天有超过30亿的店铺、商品浏览记录,10亿在线商品数,上千万的成交、收藏和评价数据。如何从这些数据中挖掘出真正的商业价值,进而帮助淘宝、商家进行企业的数据化运营,帮助消费者进行理性的购物决策,是淘宝数据平台与产品部的使命。 为此,我们进行了一系列数据产品的研发,比如为大家所...
MapReduce是一种编程模型,用于大规模数据集(大于1TB)的并行运算。概念"Map(映射)"和"Reduce(化简)".简单来讲,就是给大量的输入的 key/value 的键值对 reduced 成少量的key/value 的键值对。
定向抓取有很多的应用场景,比如B2C商品的抓取,点评的抓取等等。在本文提到的系统里面,主要使用linux+mysql+redis+django+scrapy+webkit,其中scrapy+webkit作为抓取端,redis作为链接库存储,mysql作为网页信息存储,django作为爬虫管理界面,快速实现分布式抓取系统的原型。
近3天十大热文
- [69] Twitter/微博客的学习摘要
- [67] IOS安全–浅谈关于IOS加固的几种方法
- [65] 如何拿下简短的域名
- [65] android 开发入门
- [63] find命令的一点注意事项
- [62] Go Reflect 性能
- [61] 流程管理与用户研究
- [60] Oracle MTS模式下 进程地址与会话信
- [59] 图书馆的世界纪录
- [57] 读书笔记-壹百度:百度十年千倍的29条法则
赞助商广告