摘要: 淘宝的一些牛人,多看看他们写的东西 : 花名(真名) 牛人照片 http://campus.taobao.com/technology.php淘宝技术委员会是由淘宝技术部高级技术人员组成的一个组织,共分为Java分会、C/C++分会、算法分会:数据分会:UED分会、测试分会、系统分会七个分会。淘宝技术委员会的愿景是淘宝成为技术人才向往的乐土,高级技术人员的发源地;技术委员会的使命是帮助淘宝建立业界一流的技术团队。同时,技术委员会也是技术人员间交流技术和想法的一个平台。我们努力让淘宝成为技术的舞台,我们为愿意从事互联网事业的技术人一个接触世界上顶尖网站架构的机会!我们期待着和一群有着挑战意愿和梦 阅读全文
posted @ 2012-06-27 22:51 ajian005 阅读(769) 评论(1) 推荐(1)
摘要: 这周ECMAScript 5也即众所周知的JavaScript正式发布了(pdf),在给基本库带来更新的同时,还引入了更加严格的运行时模型,来帮助定位并移除通常的代码错误。而早期对于ECMAScript 4的标准化工作基本就算是失败了;只有Adobe的ActionScript是基于建议的变化的。ECMA甚至都没有发布一个版本4的规范,因为不同的组织对于发展的进度并不满意;就这样,也没有浏览器来支持它了。在过去的几年,随着JavaScript引擎的大力改善,比如Nitro和TraceMonkey,JavaScript已经极具性能,以Google Wave为代表的在线协作应用可以证明这一点。甚至还 阅读全文
posted @ 2012-06-27 22:06 ajian005 阅读(196) 评论(0) 推荐(0)
摘要: 作者:Chuanhui|可以转载, 但必须以超链接形式标明文章原始出处和作者信息及版权声明本文链接地址:http://www.nosqlnotes.net/archives/125Key-Value系统只需要支持简单的随机读(Get),写(Put)和删除(Del)操作。由于磁盘是顺序存储介质,因此可以往数据文件追加Key-Value记录并在内存中存放记录所在的磁盘位置,即索引信息。由于对同一个Key的更新(Put)操作以最后一个为准,内存中的索引只需要记录最新的Key-Value对位置即可,而对于删除操作,也是往数据文件追加一个删除记录。由于内存的大小有限,需要尽可能减小索引记录的大小,比如只 阅读全文
posted @ 2012-06-27 16:47 ajian005 阅读(227) 评论(0) 推荐(0)
摘要: 作者:Chuanhui|可以转载, 但必须以超链接形式标明文章原始出处和作者信息及版权声明本文链接地址:http://www.nosqlnotes.net/archives/122单机存储引擎解决单机读写问题,Merge-Dump存储引擎设计成一种通用的存储引擎,同时支持数据写入,随机读取和顺序扫描功能。顺序扫描功能应用很广,比如MapReduce批处理,同一个广告主的所有关键词广告统计,用户浏览所有的收藏信息,淘宝卖家管理大量的商品等。简单的KV系统只需要支持随机读取,而类似Bigtable这样的通用表格系统需要考虑基于主键的顺序扫描功能。Bigtable中的Merge-Dump存储引擎结构 阅读全文
posted @ 2012-06-27 16:46 ajian005 阅读(235) 评论(0) 推荐(0)
摘要: 常用的数据结构包括:数组,队列,堆栈,链表,树(平衡二叉树,B树,Trie树,堆),哈希表,图,后缀数组,等等。其中,堆,图结构,Trie树及后缀数组解决特定问题,其它数据结构解决通用的查找,更新,删除操作。Trie树,又称单词查找树或键树,是一种树形结构,是一种哈希树的变种。典型应用是用于统计和排序大量的字符串(但不仅限于字符串),所以经常被搜索引擎系统用于文本词频统计。它的优点是:最大限度地减少无谓的字符串比较,查询效率比哈希表高。查找,更新和删除操作一般是O(1),O(logN) 注log以2为底 或者O(N),通用的数据结果大致可分为如下三种:1, 极端型;某些操作的算法复杂度为O(1 阅读全文
posted @ 2012-06-27 16:33 ajian005 阅读(247) 评论(0) 推荐(0)
摘要: ====================================目录1 硬件虚拟化技术背景2 KVM的内部实现概述2.1 KVM的抽象对象2.2 KVM的vcpu2.3 KVM的IO虚拟化2.3.1 IO的虚拟化2.3.2 VirtIO3 KVM-IO可能优化地方3.1 Virt-IO的硬盘优化3.2 普通设备的直接分配(Direct Assign)3.3 普通设备的复用===================================1 硬件虚拟化技术背景硬件虚拟化技术通过虚拟化指令集、MMU(Memory Map Unit)以及IO来运行不加修改的操作系统。传统的处理器通过选择 阅读全文
posted @ 2012-06-27 14:59 ajian005 阅读(463) 评论(0) 推荐(0)
摘要: 近研究了下google protobuf协议,顺便对比了一下json,xml,java序列化相关的数据对比,从几个纬度进行对比。别人的相关测试数据:http://code.google.com/p/thrift-protobuf-compare/wiki/Benchmarking测试纬度序列化时间反序列化时间bytes大小测试代码准备protobuf文件Message.proto文件代码 import"InnerMessage.proto";packagedemo;optionjava_package="com.agapple.protobuf.data" 阅读全文
posted @ 2012-06-27 13:50 ajian005 阅读(641) 评论(0) 推荐(0)