您现在的位置:首页
--> 系统架构
RDBMS的优势在于功能,包括事务,强一致性,同时支持随机读和顺序扫描,索引。NOSQL系统的优势在于扩展性和性能。Google的经验告诉我们,系统设计的关键点还是在于可扩展性,依赖于底层GFS+Bigtable提供的无与伦比的可扩展性,Megastore能够在上层不断完善功能,兼具RDBMS和NOSQL系统的优点。 1, 兼顾随机读和顺序扫描。Bigtable底层的存储引擎为MemTable + SSTable构成的Merge-Dump存储引擎,SSTable设计成8K ~ 64K的块,块之间有...
MVC(Model-View-Controller,模型―视图―控制器模式)用于表示一种软件架构模式。它把软件系统分为三个基本部分:模型(Model),视图(View)和控制器(Controller)。 MVC 由 Trygve Reenskaug 提出,最早被应用在 SmallTalk-80 环境中。模型―视图―控制器模式的目的是实现一种动态的程序设计,使后续对程序的修改和扩展简化,并且使程序某一部分的重复利用成为可能。除此之外此模式通过对复杂度的简化使程序结构更加直观。软...
目前,开放成为互联网一大主题,只有开放资源才能求得各方共赢。百度公司在2010年百度世界大会上正式推出了代表开放的两大平台,分别是搜索数据开放平台和应用开放平台,百度公司所倡导的框计算就此体现出了真正的实际应用价值。作为其中数据开放平台,开放了多个类目的数据引入渠道,为众多优质网站提供了更加便捷的数据接入和展示渠道,获得到了众多大小网站的欢迎和支持,同时也让广大网民能够获取到更加精准和优质的信息
• 需求满足综述
关于需求满足的概念、实施以及展望综述。
在2010年亚运会期间,百度框计算携手网易,提供了实时的赛事概况、直播、赛程进展、奖牌榜、比赛项目进程及直播等等一系列的服务,取得了重大突破。数据显示,亚运会的15天时间,通过百度框计算进行亚运相关检索的数量达到了4000万次,较上届2006年的多哈亚运会15天仅有74万的检索量相比,今年的网页检索量增长了54倍之多,可见框计算的威力之大!
一年多来,百度开放平台已经和400多家合作伙伴实现了合作,覆盖了人们出行、娱乐、商务、工作等方方面面。面对每天超过一亿次的海量搜索请求,如何精确地理解用户需求,将最优质恰当的资源用最优的样式展现给用户,这都需要一个优秀的检索架构来支撑。
假如你需要存储复杂的数据则可以使用Web Database,可以像客户端程序一样使用SQL(不过Web Database标准当前正陷于僵局之中,而且目前已经实现的浏览器很有限);假如你需要存储的只是简单的用key/value对即可解决的数据则可以使用Web Storage。 本文主要从各个方面介绍一下Web Storage的具体情况。
• 图片服务器博客
09年初的时候, 百度阿拉丁计划展现更多的图片. 这些图片一般较小, 适合在搜索页面中展现. 这些图片一般来自百度的合作方, 合作方提供的图片是多种多样的, 格式大小各不相同. 为了能让这些图片在百度页面中合适的展现,必须对图片做一定的裁剪.考虑到以上种种问题, 直接使用合作方的图片是不行的, 必须做一个专用的图片服务, 来满足以上种种需求.于是,一个图片服务器产品应运而生。
• 视频站收录浅析
随着网速的不断提高,人们通过互联网观看视频的需求正越来越大。互联网上的视频站和视频资源也在不断增加,人们经常需要借助搜索引擎来查找自己需要的视频。对视频资源的索引也相应地成为了搜索引擎的一个基本功能。而要提供对视频资源的良好索引需要首先做到对视频站点的足够好的收录。本文将对视频站的收录进行简单探讨。
这篇文章有点意思了,山寨了我们著名的Design Pattern。这篇文章并不是很容易翻译,也许我翻译的不好,大家多指正。另外,这篇文章将失去原有的趣味在于其使用了经典设计模式的单词很相似的单词,一走眼你还以为是正二八经的设计模式。呵呵。所以,我在下文中,我会保留原有的英文单词,并把真正的23个经典设计模式的英文名放在旁边(灰色)...
spinlock又称自旋锁,线程通过busy-wait-loop的方式来获取锁,任何时刻时刻只有一个线程能够获得锁,其他线程忙等待直到获得锁。spinlock在多处理器多线程环境的场景中有很广泛的使用,一般要求使用spinlock的临界区尽量简短,这样获取的锁可以尽快释放,以满足其他忙等的线程。Spinlock和mutex不同,spinlock不会导致线程的状态切换(用户态->内核态),但是spinlock使用不当(如临界区执...
因官方Book Performance Tuning部分章节没有按配置项进行索引,不能达到快速查阅的效果。所以我以配置项驱动,重新整理了原文,并补充一些自己的理解,如有错误,欢迎指正。 配置优化 zookeeper.session.timeout 默认值:3分钟(180000ms) 说明:RegionServer与Zookeeper间的连接超时时间。当超时时间到后,ReigonServer会被Zookeeper从RS集群清单中移除,HMaster收到移除通知后,会对这台server负责的regions重新balance,让其他...
数据的存储方式对应用程序的整体性能有着极大的影响。对数据的存取,是顺利读写还是随机读写?将数据放磁盘上还将数据放flash卡上?多线程读写对性能影响?面对着多种数据存储方式,我们如何选择?本文给大家提供了一份不同存储模式下的性能测试数据,方便大家在今后的程序开发过程中可以利用这份数据选择合适的数据存储模式。
既然 MMORPG 都有千篇一律同质化的趋势,好歹我们技术人员也应该总结出点东西来,新项目开发可以用现成的模式。 一般来说,MMORPG 服务器要解决的问题无非是,同步玩家的位置,状态,把这些信息广播出去(细分的话,有非战斗环境和战斗环境);需要建立一个聊天服务,供玩家文字交流;有一个信息发布渠道;有任务 NPC 和玩家一对一交流;玩家调整自己的装备(也可以看成是和一特定 NPC 交流)。 以上,我们可以看到几个基本需求是可...
今天看到Fenng同学的发言:fenng 写道"Ruby/RoR优雅?我倒是觉得恰恰是这个“优雅”导致了Ruby/RoR永远不能达到PHP那样的影响力。永远别忘了“Worse is better”." 这是一个很典型的观点,类似的观点其实有很多,例如:Mac优雅?我倒是觉得恰恰是这个“优雅”导致了Mac永远不能达到PC那样的影响力。永远别忘了“Worse is better”." 其实这个结论是完全正确的,这个世界上充斥着“Worse is better...
因为看到一篇讨论PHP,Python和Ruby的编程语言讨论贴,就说说我的PHP,Python和Ruby之路吧: 我2000-2001年用PHP用了两年,那还是第一次互联网泡沫时期,到2001年后期,Servlet/JSP流行,然后我就发现:你说用PHP写的东西,都会被人鄙视。当时我们其实也用Java了,只不过用Java写后端的消息队列。 2001年后期泡沫破灭,我跑去做企业应用,就主要写Java写了很多年,中间2003年开始做JavaEye网站,...
这是这一系列的最后一篇文章了,前面我们讲到了XML,SOAP,HTM格式和第二部分的JSON和JSONP。现在我们来看看自定义数据格式。 最佳的数据传输格式应该是使用最少的传输量表达最需要的数据。想想之前在XML和JSON中定义的书的数据。
在之前的文章中我们讲到了早期的集中数据格式,XML,SOAP,HTML。现在,我们来看看JSON和JSONP。 JSON JSON(JavaScript Object Notation)是Douglas Crockford提出的。他是一个轻量级的数据交换格式,基于JavaScript对象字面量。
当AJAX被创建的时候,他的原意是:Asynchronous JavaScript and XML,异步的javascript和XML,总的说来就是这样的: 首先创建一个网络服务,比如可以传递HTTP GET/POST参数的PHP页面,然后返回一个XML格式的响应 写一些客户端的js代码。比如传递参数和解析XML。这些调用是异步的,所以在等待数据的过程中浏览器不会被卡死。 处理XML中的数据,然后更新DOM节点 AJAX这个名词被开发者和销售人员滥用了。今天这个本应该全大写缩写的词...
近3天十大热文
- [70] Twitter/微博客的学习摘要
- [65] find命令的一点注意事项
- [64] 如何拿下简短的域名
- [64] IOS安全–浅谈关于IOS加固的几种方法
- [63] android 开发入门
- [62] 流程管理与用户研究
- [62] Go Reflect 性能
- [60] Oracle MTS模式下 进程地址与会话信
- [59] 读书笔记-壹百度:百度十年千倍的29条法则
- [59] 图书馆的世界纪录
赞助商广告