坚信科学,分享技术

Category Archives: 资料文档

这里有原创翻译的经典文献资料,以及各种技术文档。

LinkIn基于Dynamo设计的系统:伏地魔(voldemort)设计中文文档[我是陈科学院译]-完稿

原文地址:http://project-voldemort.com/design.php 翻译:陈臻 http://www.54chen.com 我是陈科学院 版本:1.0 日期:2009-8-25 Key-Value存储 为了实现高性能和高可用性,我们只允许非常简单的键值数据存取。key和value可以是list和map的复杂类型,但美中不足的是只有以下的查询是有效的: value = store.get(key) store.put(key, value) store.delete(key) 这可不是解决了所有的问题,其实做了许多的取舍: 缺点 没有复杂的查询过滤器 所有的联合查询必须在代码实现 没有外键的结构 没有触发器和视图 优点 只有高效的查询可用,性能是可想像的 容易分布到集群 不管怎样,面向服务常常不允许外键的结构,并且强制在代码中实现联合(因为和数据相关的key这个关系 在另一个服务中维护着) 使用关系型数据库你必须要有一个缓存层用来扩展读操作,不过这个缓存层很典型地强制你使用了key-value的存储系统 为了性能,最后不得不使用xml或者是其他不够正规的一砣文本 使逻辑和存储分离清晰(出于性能原因,SQL鼓励将商业逻辑和存储操作混在一起) 没有对象-关系数据的丢失匹配问题 数据模型的详细的讨论将在下面给出。 系统架构 代码中的每层实现了简单的put get和delete操作的接口。每一层都会负责一个方法,诸如tcp/ip网络通信、序列化、版本冲突解决、内部结点路由等等。例如路由层负责发起一个操作,比方说是Put,并且分发给N个存储并行执行复制,同是要捕

Continue reading

Posted in 资料文档 | Tagged , , | 11 Comments

[我是陈版]分布式存储系统文档翻译计划-voldemort,lightCloud,dynamo

最近在研究分布式的存储架构,具有代表性的设计有亚马逊的dynamo,LinkIn的voldemort等等,在查阅资料的时候深感他们的不便,特计划翻译其中的设计内容,为中文资料添加一份力量。 目前收集到的需要翻译的资料有: http://project-voldemort.com/design.php voldemort设计文档 【正在进行】 dynamo文档【还未开始】 lightCloud文档【还未开始】 如果网友发现上述资料的中文内容请告诉我,不用做重复的劳动,特表谢意。

Continue reading

Posted in 资料文档 | Tagged , | 1 Comment

twitter api 中文文档 [前言][515更新]

[ 翻译:陈臻 本文版本:v1.1 最后修改:2009.5.15 转载请注明原文链接:http://www.54chen.com/c/591 原稿:twitter wiki 完成2%] 前言 (每个开发者在开始使用api前都必须知道的概念) 开始使用api前必读 (细读这一节,你将掌握大多数经验丰富的开发者知识) 【不知道为什么,这一节的内容在wiki里被人删除了】 每一个开发者都必须知道的事情 (每个twitter api开发者都必须知道的基础知识) 0)FAQ的内容 当你开始开发的时候,熟悉FAQ的内容并且知道问题所在。 1)twitter其实有两份api 目前twitter api存在两个分立的版本。大部分的开发者都混用这两份api来完成开发。将REST和Search的api分离是不理想的,完全是由于历史原因。如果开发周期允许的话,我们打算合并REST和Search的api完善之。api预览里的前言部分说明了这段历史。 2)你不能无限次地调用 api的使用频率是有限制的。你可以阅读《我们有个雷管》(这个名字好雷哦)来学习下。 3)此api是完全基于HTTP的 从twitter api检索数据的方法需要发送GET请求。提交、修改或者删除数据使用POST请求。DELETE请求也是可用来删除数据。如果你没有使用正确的方法请求数据,使用特殊HTTP方法的api就返回一个错误。HTTP的返回(有链接)是丰富多彩的。 4)此api是RESTful的源 twitter api企图确保按照REST的原则来设计。只需要简单修改你请求的扩展上的格式就可以取到你所指定的格式。本文档指明了对每

Continue reading

Posted in 架构研究, 资料文档 | Tagged , , | 10 Comments

究竟什么是TSRMLS_CC?

翻译:54chen.com 原文地址:http://blog.libssh2.org/index.php?/archives/22-What-the-heck-is-TSRMLS_CC-anyway.html 如果你曾经做过php内核或者是php扩展方面的工作,你一定见到过这个到处都是的结构,但是却从来没有人提起过它。知道这是什么的人典型回答不知道的人都会这样说:“不用管它是什么,只需要在这里、这里还有这里用,如果编译器说少一个tsrm_ls,就加一个...”。这样回答并非都是因为这个人懒惰(的确是有一点点懒),其实那只是在说引擎甚至可以不管这个神奇的值在简化什么,这是因为一个新入门的扩展开发者知道它的结构没有什么益处。这信息就像奶牛的意见一样,没关系,就是牛叫而已。 既然我喜欢听自己喋喋不休的无意义主题(这个月我已经少写很多博客了),我想我得弥补这一主题,看看会不会有人通过他能领会什么。你可以责怪Lukas(Lukas Smith 是 PEAR DB 的主要作者应该是这个Lukas,译者注),他让我一直在planet-php.net上。 术语 TSRM Thread Safe Resource Manager - 这是一个经常被忽视的层面,就会有也是很少被讨论到,在你的PHP源代码包中,它被隐藏在/TSRM目录中。默认情况下,TSRM 层只在编译需要它的SAPI的时候才会打开(例如apache2-worker)。所有的在win32下编译的SAPI都会有TSRM层而不会管它们是否需要。 ZTS Zend Thread Ssafety -通常情况下,与TSRM有相同的用处。具体

Continue reading

Posted in php, 资料文档 | Tagged , , , | 10 Comments
Page 2 of 212