撬动地球的GOOGLE – The Google Story

书名:撬动地球的GOOGLE 副标题:全面揭密GOOGLE快速成长之谜 作者:[美]戴维·怀斯    马克·马西德著 出版社:中信出版社 书号:ISBN7-5086-0709-0/f.1053 价格:35.00元 出版时间:2006年9月 前言:     GOOGLE在特制的计算机上运行拥有其专利的特殊软件,以支持搜索功能及其相关服务,我们称他为GOOGLEWARE。     约翰·享尼西:GOOGLE在众多可能的竞争对手面前保持不败的技术优势是,GOOGLE的技术人员能够整合公司使用的个人电脑来进行搜索,以满足用户的需要。这恐怕就是GOOGLE保守得最好的秘密。     他们操纵着世界上最庞大的计算机系统,其他任何系统都望尘莫及。     GOOGLE将个人电脑一台压着一台码在冰箱尺寸相当的支架上,然后利用其专有的软件和连线方式将这些计算机连接起来。     这些计算机先将查询的内容分解成极微小的部分,再将他们与事先与已经完成索引和归类的互联网内容的复本进行比对,进而找出相关的内容。     斯坦福大学同雅虎,ALTAVISTA和其他一些重要的搜索引擎及技术公司接洽,试图以100万美元将GOOGLE 的搜索技术出售给它们,这些公司都对拒绝了。 […]

IE6 DIV 覆盖 Select 元素 Form 控件

本为讲述了如何解决在IE6下动态创建的DIV等Element会被Select等Form控件覆盖的问题。 下拉框,即html的SELECT元素,.net设计时的DropDownList,是html中的windowed element,尤其ie6之后,几乎是唯一的windowed element(还有popup等少量极少用的的)。 普通的元素,textbox, div, table……这些,属于windowless element,它们之间互相遮盖的情况由z-index决定,在它们之上,是SELECT这些windowed element。所以一般情况下div、table等不能遮盖select。 这个问题广泛存在于各种弹出式控件的使用之中,比如日历控件等。 如果要显示div,以前的做法是,动态的,在显示的时候,让div区域的select不可见,div消失的时候,再恢复这些select元素。这种做法比较奇怪,因为它严格上并不是“遮盖”了select,而是,让她整个消失了,如果calendar弹出元素只是应该遮盖select元素的一部分,但select却整个不见,用户也许会觉得奇怪;做起来也麻烦,要用js逐一判断各select的位置。 ie5.5之后,有一个新的小技巧,称之为“iframe shim”(iframe加塞:p),可以真正的“遮盖”select元素。 它利用了一种特殊的元素:iframe。在ie5.5之前,iframe也是windowed element,但从5.5开始,iframe就是普通的windowless […]

DIV CSS 简要教程

  当我们进行CSS+DIV的方式来重构我们的 html页面时,通常会发现一些是网站标准(或称“WEB标准”)中常用的术语之一,通常为了说明与HTML网页设计语言中的表格(table)定位方式的区别,因为XHTML网站设计标准中,不再使用表格定位技术,而是采用css+div的方式实现各种定位。应用应用DIV+CSS编码时很容易犯一些错误。本文列举了一些常见的错误:   1.检查HTML元素(如:<ul>、<div>)、属性(如:class=””)是否有拼写错误、是否忘记结束标记(如:<br />)   因为Xhtml 语法比较严格,诸如Firefox 之类的浏览器如果检查发现Xhtml里面有语法错误,那页面是不能正常显示的。即使是老手也经常会弄错div的嵌套关系。可以用dreamweaver的验证功能检查一下有无错误。   2. 检查CSS是否正确   检查一下有无拼写错误、是否忘记结尾的 } 等。可以利用CleanCSS来检查 CSS的拼写错误。CleanCSS本是为CSS减肥的工具,但也能检查出拼写错误。   3. 确定错误发生的位置   如果错误影响了整体布局,则可以逐个删除div块,直到删除某个div块后显示恢复正常,即可确定错误发生的位置。 […]

IE6 CSS Hack

最近在做一些UT的工作,写一些HTML和CSS,又遇到了一直很头疼的浏览器兼容问题。 主要就是让人讨厌的IE6,总是需要进行很多特殊的处理。 遇到表格类型的HTML区域,我一直觉得用table是最合适的,解决局部的单层表格,table是最方便的,HTML语言加入table这个标签的初衷就在这里。 不过因应用需要,我这回必须要用div实现table的布局,只能硬着头皮搞了。 对表格区域,我用ul标签,用li作为每行的容器。 在每个li标签中,用div作为列单元的容器。 这会遇到几个问题,同时也有一些优点吧: (缺点)列的宽度必须用样式来定义,比如每行相同的列单元,都必须使用相同的class,在css中给这个class定义绝对宽度,用width=240px这类的语句,代码冗余比较多 (缺点)每个div必须添加float:left的css定义,因为div是块状元素,默认是按行竖着排列的,设为浮动元素后,才可以横着排列 (缺点)float:left这个属性的排列方式,我总结的是按左上原则,可以理解为左上角是引力中心,把每个float元素都紧紧地吸附着,如果右侧有空间,就顺序排列在右侧,如果没空间了,就到下面一行尽量靠左的位置开始排列……,因此如果宽度不够,改行左边单元的高度又高于其他单元,那么最右侧的单元会卡在左边的单元右侧,呃,可能不好理解,回头我给个图,专门说一下这个规则 (缺点)li的高度默认不是自适应,当div单元的高度很大时,会突破li容器,影响下一行li的显示,呃……不过这个是有办法解决的,这篇文章主要就是来说明这个解决办法 (优点)div对浏览器来说就是一个简单的元素,浏览器每读完一个div,就可以立即显示,不必等待所有html代码都下载完才画出页面,这也是大家不喜欢table的主要原因 (优点)每行都有自己单独的列元素,每列的宽度可以不一致,这点table很难做到,即便能做到,也是用非常绕弯的方法,而用li+div来解决,就很灵活 看似缺点比较多,不过缺点都可以解决。 下面列举几个方法,就不一一对应了,其实道理都是相通的: […]

用户群 定位

我一直以为,中国互联网的中坚用户,就是18至30岁这个年龄段的人,每天可以有几个小时花在网络上。 国内火热的SNS,我简单研究了下开心、海内、校内,给我的感觉是,这些网站都是以娱乐来吸引用户,在用户的好友圈内开发娱乐应用。尤其像“停车大战”这样的游戏,故意设定了一个需要你黏在网上的规则,让你主动去玩。其实这已经不能算是简单的应用,而是一个真正的游戏了。我最早被邀请进入开心,只是简单的使用了“动他一下”的这个功能,感觉没什么意思。之后不到2个月,就发现周围的朋友都在玩这个,我真的不知道这有什么好玩的。就好像玩网游,我觉得就是花时间去练级,挣一些毫无意义的经验和等级。还有前2年比较火的QQ的星星月亮太阳的升级,我从来不关心,不过好像大部分QQ上的好友都在“练级”。 我觉得我已经不是中国互联网的“大众”用户了,可我却想着给“大众”用户开发一些很好的应用,生不逢时…… 我一直以来的想法是,从“大众”用户中挖掘潜在的需求,把简单的需求解决好,就可以吸引并留住大部分用户。 今天我的朋友给了我另一种声音,他以“宝宝树”为例,说明小众用户的网站同样可以发展得很好。这个网站面对的都是初为父母或者即将成为父母的人,我觉得这部分人不是互联网的“大众”人群(这是我目前的观点和理解,没有调研为依据)。 宝宝树做得还不错,网站很有特色,简单看了下,也有好多用户,而且感觉网站正在红红火火的发展壮大中。 我开始对我之前的想法有了很多怀疑。 能给“大众”人群解决问题固然很好,但给“小众”用户提供服务,做到极致,同样可以占领一片土地。 我对互联网的应用做过一个简单分类,分为应用型和娱乐型。 目前中国比较流行的是娱乐型,中国的网民大部分不是利用互联网来解决身边的问题,而是拿他作为一个娱乐和消遣的平台,因此网游、娱乐类型的SNS比较火爆。 而应用型的互联网产品,比如GoogleDocs、网络书签、讨论组等网站或应用却没有娱乐网站吸引人。 好像在美国或欧洲这些地方,二者是平分秋色吧。 以我现在短浅的目光,感觉是另辟蹊径以实用为主的想法都过于理想主义,不适应当前中国互联网的环境现状。而娱乐正是风头正劲的领域,在这个圈子里找一些独具创新的想法去深入发展,尽管时间上有些落后,但还是有机可乘的。 不过,我现在已经发现上面想法有些幼稚。 我想反过来思考,虽然适者生存是自然界的基本定律,但互联网不一样,他需要的是创新,严肃看待用户的需求,即便是小群体小需求,一样可以把他挖掘出来并做到极致。

TortoiseSVN-1.5.3.13783 下载

TortoiseSVN 这个小乌龟更新的好快啊,前2天刚下载了1.5.0的版本,这回1.5.3的又更新了…… 32bit: http://down.leakon.com/software/2008/09/TortoiseSVN-1.5.3.13783-win32-svn-1.5.2.msi  64bit: http://down.leakon.com/software/2008/09/TortoiseSVN-1.5.3.13783-x64-svn-1.5.2.msi  sha1sum: fea22ad9df6a098ee274703fb6a2ff303ba582af  TortoiseSVN-1.5.3.13783-win32-svn-1.5.2.msi d1222e2c88b1a0e13fcaff57a8861affd4807aab  TortoiseSVN-1.5.3.13783-x64-svn-1.5.2.msi md5sum: 4296b51fe9689eda67a81901bb2a091a  TortoiseSVN-1.5.3.13783-win32-svn-1.5.2.msi ee7112d791ebf1e2acf7213a2b882c45 […]

Google Docs Excel 表格高度调整

Google Docs 的 Excel 表格是我最常用的网络应用。 最近发现有一个小问题,在 Excel 行数很多的时候,左边的行号标识列的高度跟右侧的表格区不一致,也就是没法调整高度了。这应该是一个 bug,就是标尺与内容更新不同步造成的。 今天偶然发现,调整表格上方的列号标尺,调整任意一列的宽度时,左侧的行号标尺会自动更新高度,会跟每行自动对齐。 一个小 Tip,希望可以帮助大家解决问题。

高并发 高负载 网站系统架构

转自:http://www.toplee.com/blog/71.html 我在CERNET做过拨号接入平台的搭建,而后在Yahoo&3721从事过搜索引擎前端开发,又在MOP处理过大型社区猫扑大杂烩的 架构升级等工作,同时自己接触和开发过不少大中型网站的模块,因此在大型网站应对高负载和并发的解决方案上有一些积累和经验,可以和大家一起探讨一下。 一个小型的网站,比如个人网站,可以使用最简单的html静态页面就实现了,配合一些图片达到美化效果,所有的页面均存放在一个目录下,这样的网站对 系统架构、性能的要求都很简单,随着互联网业务的不断丰富,网站相关的技术经过这些年的发展,已经细分到很细的方方面面,尤其对于大型网站来说,所采用的 技术更是涉及面非常广,从硬件到软件、编程语言、数据库、WebServer、防火墙等各个领域都有了很高的要求,已经不是原来简单的html静态网站所 能比拟的。 大型网站,比如门户网站。在面对大量用户访问、高并发请求方面,基本的解决方案集中在这样几个环节:使用高性能的服务器、高性能的数据库、高效率的编程语言、还有高性能的Web容器。但是除了这几个方面,还没法根本解决大型网站面临的高负载和高并发问题。 上面提供的几个解决思路在一定程度上也意味着更大的投入,并且这样的解决思路具备瓶颈,没有很好的扩展性,下面我从低成本、高性能和高扩张性的角度来说说我的一些经验。 1、HTML静态化 其实大家都知道,效率最高、消耗最小的就是纯静态化的html页面,所以我们尽可能使我们的网站上的页面采用静态页面来实现,这个最简单的方法其实也 是最有效的方法。但是对于大量内容并且频繁更新的网站,我们无法全部手动去挨个实现,于是出现了我们常见的信息发布系统CMS,像我们常访问的各个门户站 点的新闻频道,甚至他们的其他频道,都是通过信息发布系统来管理和实现的,信息发布系统可以实现最简单的信息录入自动生成静态页面,还能具备频道管理、权 限管理、自动抓取等功能,对于一个大型网站来说,拥有一套高效、可管理的CMS是必不可少的。 除了门户和信息发布类型的网站,对于交互性要求很高的社区类型网站来说,尽可能的静态化也是提高性能的必要手段,将社区内的帖子、文章进行实时 […]

Google 把国内的企业邮局提供商逼到了生命的尽头

你有自己的域名吗,比如 example.com? 想不想给自己搞一个邮件,例如:genius@example.com 或 tiancai@example.com。 给你自己的家人和朋友,分配一个超级个性化的邮箱? 你的女朋友可能喜欢:beauty@example.com 或 meinv@example.com。 你的父母也想尝试用用互联网,那给他们开通一个好记的邮件:baba@example.com、mama@example.com。 …… 尽情发挥吧。 现在域名是如此的便宜,cn 域名现在注册费用是第一年 8 […]